Game Maker's Garage Forum

Game Creation => Other Languages & Tools => Topic started by: GMG Tim on August 31, 2008, 01:37:27 PM

Title: Project Vulcan
Post by: GMG Tim on August 31, 2008, 01:37:27 PM
I know I mentioned that I was working on an MMORPG earlier, but I thought I'd post a quick screenshot today of the first stable version of the system. I'm going to be testing it sometime this week with 3-4 people, and if that works out, then I'll probably ask for more volunteers for a larger scale test (15-20 people).

The FPS number isn't really FPS, I forgot to change the label.

http://www.gamemakersgarage.com/content/screenshots/vulcan.png

Ghost
Title: Re: Project Vulcan
Post by: Silverwind on August 31, 2008, 02:13:55 PM
Nice indeed Ghost! Can't wait to see more progress on it. :) Judging by the screens it isn't character centered, so is it a Yipe!/QoM style nav? As in, you walk to the edge of the screen to travel to the next room?
Title: Re: Project Vulcan
Post by: Gan on August 31, 2008, 03:06:17 PM
Whoa. Great Job. I would love to make a mac mmo with python, but for the life of me, can't understand how to code or even how to compile it into an application.

Can't wait to see future versions.


-Gandolf

P.S. I would be glad to test out any aspect of the game if need be any testing.
Title: Re: Project Vulcan
Post by: EqwanoX on August 31, 2008, 03:50:00 PM
this looks interisting, just nav so far?
Title: Re: Project Vulcan
Post by: Mystor on August 31, 2008, 08:03:19 PM
Quote
I know I mentioned that I was working on an MMORPG earlier, but I thought I'd post a quick screenshot today of the first stable version of the system. I'm going to be testing it sometime this week with 3-4 people, and if that works out, then I'll probably ask for more volunteers for a larger scale test (15-20 people).

The FPS number isn't really FPS, I forgot to change the label.

http://www.gamemakersgarage.com/content/screenshots/vulcan.png

Ghost
I'll definately help out,

BTW awesome, can you explain how you wrote the backend(how does it store data etc.)
Title: Re: Project Vulcan
Post by: GMG Tim on August 31, 2008, 11:58:13 PM
Thanks for the feedback. Right now it's just one room as an example. I'm debating whether to make it character-centered or room-based. Simple nav is all that's been implemented-- all collision detection will be server side.

As for the backend, it's just a server that is constantly running (written in Python). It spawns a thread (I cap # of threads to 10, but that's optional) whenever it needs to process a user, and takes care of whatever it needs to do.

The server has an internal map that determines if a player's move is valid, so all move validation is done server-side.

If you have a more specific question, I could go in more detail.

Ghost
Title: Re: Project Vulcan
Post by: Mystor on September 01, 2008, 08:16:30 AM
Are you keping track of any other data? like levels etc.?

Mist
Title: Re: Project Vulcan
Post by: GMG Tim on September 01, 2008, 01:39:38 PM
Yes, that's all kept track of on the server. When the user disconnects, it's written out to a MySQL db.
Title: Re: Project Vulcan
Post by: GMG Tim on September 02, 2008, 06:00:16 PM
I will [eventually] be in need of an artist to make the sprites for the characters, and the tile sets for the maps. Let me know if you're interested (this is planning very far ahead, and the time won't come for quite a while still.)

Ghost
Title: Re: Project Vulcan
Post by: Mystor on September 02, 2008, 08:12:03 PM
Quote
Yes, that's all kept track of on the server. When the user disconnects, it's written out to a MySQL db.
only when it disconnects?

Cool
Mist (EDIT: Whoops!)
Title: Re: Project Vulcan
Post by: Tireas Dragon on September 02, 2008, 08:55:10 PM
Quote
only when it disconnects?

Cool

Mike
Don't you usually sign out Mist? When did you change your name to Mike? or were you talking to him.
Title: Re: Project Vulcan
Post by: GMG Tim on September 03, 2008, 12:00:34 AM
Quote
only when it disconnects?

Cool
Mist (EDIT: Whoops!)

Yes, because lots of the stats can be kept on hand with the server without overloading them, and MySQL access would be too slow (maybe not in my situation, but definitely in an MMORPG like WoW)

Ghost
Title: Re: Project Vulcan
Post by: Mystor on September 03, 2008, 08:37:10 AM
Quote

Yes, because lots of the stats can be kept on hand with the server without overloading them, and MySQL access would be too slow (maybe not in my situation, but definitely in an MMORPG like WoW)

Ghost
ok, thanks

I was just wondering what would happen if the server crashed, all connected users would lose their progress, no?

Mist
Title: Re: Project Vulcan
Post by: GMG Tim on September 03, 2008, 09:31:33 PM
Quote
ok, thanks

I was just wondering what would happen if the server crashed, all connected users would lose their progress, no?

Mist

That's why you design a server not to crash. =D But yes, there is that possibility, as there is with WoW. That's why instead of saving everything constantly to a MySQL db, you set a save interval (every X seconds of gameplay, stats are saved).

Ghost
Title: Re: Project Vulcan
Post by: Silverwind on September 04, 2008, 02:48:18 AM
Yeah, many a time I've lost magic items whilst playing Oberin. :-/

I recall one particularly memorable evening when I was making my way back to Lerilin from Port Ghast and ran into a Bone Mage. A Bone Mage in the middle of the forest?! Naturally I made it back to Lerilin as a ghost, resurrected and went back with my Fire Elemental to reclaim my loot. Upon reaching my corpse however the server crashed, and by the time it came back the Bone Mage had killed me again, as well as my lvl 8 FE! So, I returned to Lerilin and explained my story to a few players at the bank, and after hearing it one of the higher lvl ones very generously gave game me his spare Stave of Power. But alas, no sooner had I received it did the server crash again, and since the save interval hadn't been reached I didn't have the SoP when I logged in the next day.

So yes, it does happen. :(
Title: Re: Project Vulcan
Post by: Gan on September 05, 2008, 07:38:48 AM
On vb.net, in the server, I have it so it saves the data each time something new happens. Such as, a player moves to a new tile, it sends their location, the server saves it in a .txt file. Everything is saved and will never lose progress. It runs 200+ fps.



-Gandolf