PSMUD: Build 2
Yes, we're still alive! Come see all that has changed since we last posted!
Note: the characters piled at the top have been fixed, this picture is slightly outdated.
It's been quite a while, hasn't it! In truth, this isn't really the second "build", but the others never made it on to the blog. Just by looking at the screenshot, you can tell a number of things have changed.
- PSMUD is now in COLOR!
- The map now scrolls!
- Map has PETSCII objects, will be custom later (you can still walk through them though...)
- However, currently PSMUD isnt multiplayer, and you can't choose your character.
I know, that's not a huge list of changes. But don't worry! We have a lot of things in store! Specifically, in the next update PSMUD will feature (hopefully):
- Impassable objects
- Multiplayer
- A map creator, with the ability to upload the map section to the game!
And a lot more features will be coming up soon! So stay tuned, Commodore fans!
Leave a Comment
You must be signed-in to post comments.Responses
wizardnj 6/11/2013
Wow very cool!!!!! You guys think of ever using CartrographPC to make the maps (Shameless plug) :)
Weegee 6/11/2013
I'm not sure what program we will be using for tiles and maps, we will see. Currently we're going to focus more on gameplay and framework.
S0RC3R0R 6/22/2013
That is very cool! Real-time, multi-player, MUD for the C= with a very Ultima-ish feel to the scrolling map. I see Jeff's coding for Netrunner's scrolling node map display paid off, and may have even provided the basis for the code this is using if he is coding it. I see his name was in the credits for the game server code.
Look forward to seeing a sneak-peek release to check it out online sometime. ;)
- S0R
TIhde 6/22/2013
Oh, this is such a wonderful post to come back, log in, and read. Awesome!
S0RC3R0R 6/23/2013
I would assume that each player sees his own map window that scrolls as he moves, and you will see players moving in your window if their path enters your WINDOW area on the map, right?
That I have to see.
Weegee 6/24/2013
Great to see such positive feedback! :D
And yes, individual map scrolling will be implemented eventually and all that great stuff. We're not sure yet if each player will load new tiles each time they move, or if tiles will be rendered only when they reach the edge of a screen.
S0RC3R0R 7/3/2013
An idea came to me after thinking about that. If you are loading a NEW map area (locale such as a dungeon, cave, wilderness area from a teleport, etc.) you should and could LOAD all of the MAP tiles needed... but for extended map areas of a locale, you could load as you go (as soon as the x,y max boundry for the map is reached on each move, if you want it to scroll smoothly).
Just a thought... my game Netrunner 64, loads an entire network node map grid after a player connects to a HUB node on that network (from a port node, or by a telnet program).
I could have went the way of load as the player moves and the map is scrolled, but I did not have large maps (only 10x10 grid of nodes connected by links).
jwhoag 7/30/2013
Here's some technical information on how the PSMUD server and client currently operate.
The map on the server end can be arbitrarily large. The client end never sees the entire map at once. Each client subscribes to a buffer frame within the map (currently a 40x25 rectangle) based on where the player is currently located in the map. The server is notified of the subscription request and feeds the map data within the subscription area to the client, where it is cached. When the player moves to within a certain margin from the edge of the current subscription frame, the subscription is updated in anticipation of where the player is going; the current data is shifted in the cache and new map data is filled into the gap areas.
The map data on the server end is currently stored as a simple text file, but this will eventually change to a more encompassing format. Also, right now map editing is done in a text file editor on a PC. I'd eventually like to see a map editor as a C64 cl
jwhoag 7/30/2013
...(continued) client so users can participate in content creation.
jwhoag 7/30/2013
The main development issues I am currently working are:
* Slow communication. For proof of concept purposes, I used regular chat messages in a private room. This makes communication easy to visualize, but is very slow. So right now, map updates and turnaround times are rather painful. I am working on moving to CommodoreServer's P2P protocol. I expect this will speed things up at least 2x-3x.
* The 40x25 cache is much too small for smooth operation when the viewport is larger than about 1/4 of the screen. I'm working on increasing the cache to 64x49. This will give us a 12 mapcell margin if the viewport is set to use the entire screen. I expect that ultimately, the viewport will be somewhat smaller than the full screen. (The map drawing function on the client end is written so that the viewport can easily be moved and resized on the screen.)
* Only a single player is currently supported by the server. I am focusing on getting the communication working nicely first,
jwhoag 7/30/2013
(...continued) so multiplayer is a bit lower on the priority. It doesn't make much sense to add multiple players until a single player can move about the map without frustration!
jwhoag 7/30/2013
S0rc3r0r, as you suspected, yes--for the proof of concept I initially used the same code I wrote for your Netrunner game! However, the PSMUD code has since diverged quite a bit, and now it is pretty different from the Netrunner code.
S0RC3R0R 5/24/2015
Still alive?