<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
    <channel>
        <title>Stevenw9's site</title>
        <link>http://www.byond.com/members/Stevenw9</link>
        <description></description>
        <lastBuildDate>Wed, 22 May 2013 07:06:20 +0000</lastBuildDate>
        <language>en-us</language>
    
                <item>
            <title>Random Entry: Dreaming</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=122653</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=122653</guid>
            <pubDate>Sun, 08 Jan 2012 00:33:28 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=122653#comments</comments>
            
            <description>I dream of one day being able to create a video feature that allows other people to watch in complete synchronization... but making that happen is another story.</description>
        </item>
                <item>
            <title>Beep!, Telnet and Channels</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=122652</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=122652</guid>
            <pubDate>Sun, 08 Jan 2012 00:31:05 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=122652#comments</comments>
            
            <description>So with my revisit to Beep!, the UI is cleaner and actually updates properly (GASP!). An image feature was also added to the 'who' grid to let BYOND members put their image to use. A simple question mark appears for those without an image.&lt;br&gt;
&lt;br&gt;
Along with this has come my first touch with Telnet clients. Right now, anything you enter is sent as a message. There's no command support. I've considered using a library for this, but the sub-libraries attached to them go so deep I don't really know what I'm including. So with that, i'm working on creating my own text parser and such. As usual, there's no ETA on this, but it is a high priority.&lt;br&gt;
&lt;br&gt;
Channels (think of them as rooms) is another feature I'm adding to Beep!. The reason I'm adding this feature and removing passwords is so that servers can be more compact and serve more than just one group of people. Channels will have their own password feature for those who want privacy for whatever reason. This feature will be fully implemented by February.&lt;br&gt;
&lt;br&gt;
More is on the way too, which will be announced as they come further along, so stay tuned!&lt;br&gt;
&lt;br&gt;
NOTE: In case there's any confusion on this subject. The host files will always remain public.</description>
        </item>
                <item>
            <title>Connect w/ Telnet</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=154728</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=154728</guid>
            <pubDate>Fri, 06 Jan 2012 13:19:15 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=154728#comments</comments>
            
            <description>Okay, so there's quite a few posts and such about how to support Telnet, but I haven't seen anything on how to actually connect with Telnet.&lt;br&gt;
&lt;br&gt;
First, I have Windows 7 and have enabled the basic telnet client. I also have PUTTY, just in case the windows telnet console has its own issues. The problem is when I host something, and then try to connect to it (on the same machine) I get a connection refused error or a connection reset by the host error.&lt;br&gt;
&lt;br&gt;
Now, I'm not asking for help in supporting Telnet access (which is where I'm going with this in the future), but any help regarding my inability to use Telnet to connect to things would be greatly appreciated.&lt;br&gt;
&lt;br&gt;
P.S. I did connect to several different MUD's with the Telnet clients, but they're not BYOND related.</description>
        </item>
                <item>
            <title>Beep! Share Video Function</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=122594</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=122594</guid>
            <pubDate>Thu, 05 Jan 2012 23:58:00 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=122594#comments</comments>
            
            <description>I'm curious if I can use HTML5's canvas to display flash video yet amongst other things through BYOND's browser window. Beyond that, I'm wondering how to bolster this feature in general. Hmm...</description>
        </item>
                <item>
            <title>NOT DEAD! Also, Beep!</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=122591</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=122591</guid>
            <pubDate>Thu, 05 Jan 2012 22:41:57 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=122591#comments</comments>
            
            <description>That's right, I'm still alive. I'm sure some of you are going &quot;that's unfortunate&quot;. Hah. In any event, college is taking up most of my time, though right now I'm in the &quot;in between semesters break&quot; period.&lt;br&gt;
&lt;br&gt;
Just so you all know, I still have all my projects. My RPG is on hault status, because of its super sandboxness. In the meantime, I'm getting back to work on Beep! since a few people liked the idea. In fact, I'm working on a new version right now. This new version is going to work almost entirely on your BYOND key and profile to make a few things both easier and streamlined. The current &quot;big feature goal&quot; right now is to get private messages working that can be popup or tabbed. There's no ETA on this. Expect a new shiny version without said feature &quot;soon&quot;, but with other nifty things. Like not having an half functioning UI.</description>
        </item>
                <item>
            <title>Generating 1 million objects</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=138844</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=138844</guid>
            <pubDate>Fri, 21 Oct 2011 17:56:04 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=138844#comments</comments>
            
            <description>&lt;b&gt;Code:&lt;/b&gt;&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
    genplanundersterrain()&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/celestial/planet/P &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; world)&lt;br&gt;            genplanunderterrain(P)&lt;br&gt;    genplanunderterrain(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/celestial/planet/O)&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(O.name!=&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;volcanic&amp;quot;&lt;/span&gt; &amp;amp;&amp;amp; O.name!=&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;temperate&amp;quot;&lt;/span&gt;) &lt;span class=&quot;dmkeyword&quot;&gt;return&lt;/span&gt;&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/max=O.pMaxZ-1&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/min=O.pMinZ&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/iz=max,iz&amp;gt;=min,iz--)&lt;br&gt;            &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/ix=1,ix&amp;lt;=world.maxx,ix++)&lt;br&gt;                &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/iy=1,iy&amp;lt;=world.maxy,iy++)&lt;br&gt;                    &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/a=text2path(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;/turf/land/dirt&amp;quot;&lt;/span&gt;)&lt;br&gt;                    &lt;span class=&quot;dmkeyword&quot;&gt;new&lt;/span&gt; a(locate(ix,iy,iz))&lt;br&gt;            sleep(world.tick_lag)&lt;br&gt;    genplanundersores()&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/celestial/planet/P &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; world)&lt;br&gt;            genplanunderores(P)&lt;br&gt;    genplanunderores(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/celestial/planet/O)&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(O.name!=&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;temperate&amp;quot;&lt;/span&gt;) &lt;span class=&quot;dmkeyword&quot;&gt;return&lt;/span&gt;&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/max=O.pMaxZ-1&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/min=O.pMinZ&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/iz=min,iz&amp;lt;=max,iz++)&lt;br&gt;            &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/ix=1,ix&amp;lt;=world.maxx,ix++)&lt;br&gt;                &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/iy=1,iy&amp;lt;=world.maxy,iy++)&lt;br&gt;                    &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/b=text2path(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;/obj/harvestable/Dirt&amp;quot;&lt;/span&gt;)&lt;br&gt;                    &lt;span class=&quot;dmkeyword&quot;&gt;new&lt;/span&gt; b(locate(ix,iy,iz))&lt;br&gt;            sleep(1)
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Problem description:&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
Okay so let me explain what's going on here. In my project, every planet has 5 z levels. The first z level is for the surface, the other 4 z levels is for below the surface, which is particularly used for digging, mining and/or underground construction.&lt;br&gt;
&lt;br&gt;
Currently only temperate/volcanic planets spawn a surface and underground terrain. Only temperate planets spawn objects for dirt (and eventually ores). This is to make it easier for me to see the effects immediately.&lt;br&gt;
&lt;br&gt;
So I have a 500x500 map, and that means that one million 'things' need to be spawned for each underground z level set per planet. Currently, I run two passes. One pass for turfs, the second pass for objects. My problem is that objects take 3-4x the amount of time to generate (probably more) VS turfs. Due to this, a generation proc wont cause a loop check problem if it's with turfs, but as soon as I use objects I start seeing them. I don't have a full understanding of why objects are so much more intensive, but I've been assuming there's much more information attached to them.&lt;br&gt;
&lt;br&gt;
Should I rig turfs to use them for what I want and gain a generation speed increase (they don't need to move o.O)? Or is there something else I can be doing to make this overall better?&lt;br&gt;
&lt;br&gt;
I cannot use pre-made maps. The entire universe (space, suns, planets, planet surface, planet underground) is generated at run-time.&lt;br&gt;
&lt;br&gt;
P.S. I'm using a loading screen so I don't expect this process to go all that fast. It's updated periodically throughout the process to show where we are in the generation stages. Currently universe generation takes up to 2 minutes to complete (per planet that has underground objects spawned).&lt;br&gt;
&lt;br&gt;
P.S.P.S. I'm using text2path because those entries will be dynamic to each planet later.</description>
        </item>
                <item>
            <title>My RPG/Chi Online -- Map Generation</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=120174</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=120174</guid>
            <pubDate>Wed, 19 Oct 2011 01:54:08 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=120174#comments</comments>
            
            <description>So as far as the needed components, space is done. Solar systems spawn based on how big the map is, planets spawn from as low as 1 per system up to a defined variable (which will be an in-game setting). Solar systems orbit around a galactic center, while planets orbit within their respective solar systems. You can plainly see the planetary orbits while the solar orbits are much more subtle. Orbits also look elliptical, as if the planets were being pulled towards an object by gravity before accelerating away, only to be pulled back again. Planets closer to the sun orbit faster than those further away. Also, finally, the planets spawn randomly in their respective orbits instead of all in the same spot.&lt;br&gt;
&lt;br&gt;
However, it's not done as far as where I want it to be. I could create several 'bands' of solar systems to better mimic a galaxy, which would also allow for more solar systems at any given map size. I also want to add in smaller things such as rogue asteroids. I have additional ideas but I am reluctant to share them at this time.&lt;br&gt;
&lt;br&gt;
However, what's currently roadblocking me from progression to a demo version is planet surface generation. I need to find that 'right balance' between land and water, and do this as efficiently as possible. I -will- have to put a loading screen in due to the mass amount of generation involved in this project.</description>
        </item>
                <item>
            <title>Orbit Proc Efficiency</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=138864</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=138864</guid>
            <pubDate>Mon, 10 Oct 2011 21:50:23 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=138864#comments</comments>
            
            <description>&lt;b&gt;Code:&lt;/b&gt;&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
&lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/orbit(atom/movable/a,atom/movable/b, speed, dist)&lt;br&gt;    spawn() &lt;span class=&quot;dmkeyword&quot;&gt;for&lt;/span&gt;(&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/degrees = 0; 1; degrees += speed)&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/degrees2=degrees+25&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(degrees &amp;gt;= 360) degrees -= 360&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(degrees &amp;lt; 0) degrees += 360&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(degrees2 &amp;gt;= 360) degrees2 -= 360&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(degrees2 &amp;lt; 0) degrees2 += 360&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/s = sin(degrees)&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/c = cos(degrees2)&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/nx = round(c * dist + b.x * 32 + b.step_x + b.bound_x + b.bound_width / 2, 1)&lt;br&gt;        &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/ny = round(s * dist + b.y * 32 + b.step_y + b.bound_y + b.bound_height / 2, 1)&lt;br&gt;        a.loc = locate(round(nx / 32) + 1, round(ny / 32) + 1, a.z)&lt;br&gt;        a.step_x = nx - a.x * 32 - a.bound_x - a.bound_width / 2&lt;br&gt;        a.step_y = ny - a.y * 32 - a.bound_y - a.bound_height / 2&lt;br&gt;        sleep(world.tick_lag)
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Problem description:&lt;/b&gt;&lt;br&gt;
The problem here is that when you start taking multiple procs and make them sleep(world.tick_lag), they tend to start activating at the same time and cause more load stress than they need to. Or at least this is the conclusion that my experiences have lead to.&lt;br&gt;
&lt;br&gt;
My question is how to do this more efficiently. Should I make a list of orbiting objects and put them in a searchable list, making things like speed and degree effects attached variables, thus only ever calling one of these procs for orbital objects, or would searching a list be just as bad?</description>
        </item>
                <item>
            <title>Chi Online -- Now: My RPG</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=119789</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=119789</guid>
            <pubDate>Mon, 10 Oct 2011 17:21:52 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=119789#comments</comments>
            
            <description>The hub for Chi Online WILL be renamed to 'My RPG' (Or something similar yet different if required) as soon as a new testing version is ready for public release.&lt;br&gt;
&lt;br&gt;
Here's the rundown on what Chi Online is losing in the new to-come version:&lt;br&gt;
&lt;br&gt;
Nothing except the UI's.&lt;br&gt;
&lt;br&gt;
The only reason the UI's are even changing is to accommodate using a preset -or- customized character creation menu. What? Modifiable character creation list?! Yep, as the host or designated creative admin of a server, you can ultimately change the entire scope and even game-play of the game. Do you have to? Nope, you can ignore all these custom functions and run strictly on presets which will grant you your own universe anyway. There will be limits to how far this can go, one that falls off the top of my head would be the way combat works. I may offer several solutions in-game to change it at one point, as I'm not confirming anything yet, but even then you'd be stuck choosing out of the list of systems available.&lt;br&gt;
&lt;br&gt;
What works now:&lt;br&gt;
- Solar System generation (Needs refinement on placements)&lt;br&gt;
- Solar Orbiting (Around the 'galactic center' which is the center of the map as it stands currently.)&lt;br&gt;
- Planet generation (Planet icon sizes needs refinement)&lt;br&gt;
- Planetary Orbiting (Elipse orbits and Orbit decay MAY be added later.)&lt;br&gt;
&lt;br&gt;
To see these four things happening check out:&lt;br&gt;
&lt;a href=&quot;http://s200.photobucket.com/albums/aa69/stevenw9/?action=view&amp;current=Demo2b.mp4&quot;&gt;http://s200.photobucket.com/albums/aa69/ stevenw9/?action=view&amp;current=Demo2b.mp4&lt;/a&gt;&lt;br&gt;
&lt;br&gt;
NOTE: The video stutters due to how I recorded it, the game itself is much smoother. This is not a representation of the final product but should give a pretty good idea of where I'm going.&lt;br&gt;
&lt;br&gt;
Much of what's going on with the space area is all thanks to the amazing developer forums of BYOND and its greatly helpful members. Orbiting is not something I could do on my own (FFFF MATH!).&lt;br&gt;
&lt;br&gt;
I hope you all enjoy this update!</description>
        </item>
                <item>
            <title>Dynamic Lighting</title>
            <link>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=155021</link>
            <guid>http://www.byond.com/members/Stevenw9?command=view_post&amp;post=155021</guid>
            <pubDate>Sat, 08 Oct 2011 18:12:26 +0000</pubDate>
            
            <comments>http://www.byond.com/members/Stevenw9?command=view_comments&amp;post=155021#comments</comments>
            
            <description>Okay, so while I'm not sure how to go about this, I'm also not even sure if I should try. My primary concern is performance costs. At the same time however I feel Dynamic Lighting can add depth and immersion to a game like no other.&lt;br&gt;
&lt;br&gt;
For example, if you're flying through space you would expect a sun to be really bright, but if you happen to be in a 'void', it should be incredibly dark, but a sudden transition is like 'what just happened... did I teleport?'.&lt;br&gt;
&lt;br&gt;
Another example is that if you can't see what a monster looks like that's running down a hall after you, you tend to be more afraid than if you could entirely see it, as it breaks into the light you may even be more terrified, up until you see entirely what it looks like and become used to it.&lt;br&gt;
&lt;br&gt;
So this really comes with a few pros -and- cons. Should the costs not be too high, how should I go about it? I've seen shadowdarke's DL library which seemed alright, but I don't know how that would impact a server with say 100 players. I've also seen someone use a .dll to get dynamic lighting, but I know absolutely nothing about .dll's to begin with.&lt;br&gt;
&lt;br&gt;
So with that, any ideas on where to start researching, reading, learning or a fast and dirty way to get it done would be greatly appreciated.&lt;br&gt;
&lt;br&gt;
NOTE: I don't expect anyone to generate a code base for me.</description>
        </item>
            
    </channel>
</rss>

