:::: MENU ::::

Indie MMO DevBlog #12

Game Name?

For the past 12 Devblogs I’ve called this project “SurvivalMMO”, “Survivalnauts” and “IndieMMO”. I really want to give the game a proper name, or at least something I could refer to the project as. I’ve kicked around “Sandusky” and “Starlight Town”. Nothing official yet. Any suggestions? Tweet me.

NPC Dialog

I’m excited about this! NPC Dialog! It’s still in it’s infancy, but when it’s done it will be able be really flexible!

World Objects

Craftable & Placable Tables & Chairs

Chairs and tables are now in the game, and can be crafted! They can also be placed in the game, moved and rotated.

I’ll probably not add the ability to ‘sit’ on the chairs for a long time into the development. But this is an important step in giving players the ability to interact with all objects in the game to some extent, even if that just makes moving them around and rotating them for now.

Toolkit / Game Design Tools

I announced in the last video that I would be developing a toolkit for the game, which would help me basically generate INI files needed for the game to run. This will be developed over time along side the client and the server. It will help me (and others) make necessary changes to the game without having to do any changes to the actual code of the game.
With this tool you will be able to
– Create NPC’s
– Edit certain aspects of the Map
– Create and Edit Quests
– Create Items
– Create Monsters

People have been irritated with me recently, accusing me of being too ambitious.
However, this is not as ambitious as it sounds and it will speed up the development of the game in the long run.
All I’m really doing is making a glorified INI file editor.

INI Files for Items

Items are now ini files rather than created by code in the game. This was actually a major since a lot of the items were hardwired into the code. For this to work I had to make the system more flexible. It created A LOT of glitches and other problems that I’m still hammering out, but it is so worth it!

Crafting Changes

Crafting data is also now configured through the server. This means that the server host can easily change some INI files around to change crafting info for all players. This way I don’t have to make an entirely new build and patch of the game in the future when I need to update crafting things. πŸ™‚

Loading Screen

Server Save / Refreshing

I mentioned in the last video that NPC’s would have homes that could be basically wrecked, but would refresh after the server is saved.
I’ve implemented this into the server.
The server keeps track of what objects need to be refreshed at server save, and does so.
So far it’s just keeping track of tables and chairs, and can tell the difference between chairs/tables placed by the player and the ones that need to be put back in place at server save.

Game Music

I’m not claiming to be the best at composing music, but I did make a little tune for the game using FL Studio!

Other Changes

~ Fixed longstanding glitch that would crash the client if you previous logged out in a different room.
~ Fixed glitch with crafting that was making crafting buttons appear in weird positions.

Sign up for free Alpha version key

MMO Devblog #11

Version: 0.4.8b
Goal: A 1.0 Playable Multiplayer ALPHA Version!

GameMaker Studio 2

The game was originally made in GMStudio 1.4. I’ve been working this week on converting the Client, Server and Main Server (SNON) over to GMStudio 2. I’m pretty excited about this since GMStudio 2 does have a lot of great new features. The game originally transferred to GMStudio 2 with ease. To my surprise, I can run the game just fine within GMStudio 2 with no outstanding issues. This is because GMStudio 2 generates scripts for you, and pretty much makes your game become compatible.

GMStudio2 made 937 changes to my game in order to make it work without issue.

It also generated a number of scripts to replace code that is obsolete in GMS2, which was nice.

Animated Water

Water tiles are now fully animated!

NPC’s and Monsters

I’ve made a lot of changes to NPC’s and Monsters. Originally I was just going to make NPC’s and Monsters a part of the same group, using the same data structures and code. However, which the change of the game direction I thought it necessary to split them into two separate groups that do two totally different things. Monsters are generic creatures that you can kill and get resources and items from. NPC’s will be more dynamic, and will be able to talk, give quests, sell/buy items, etc…

Monster/NPC INI Files

Instead of creating data in the actual server (hitpoints, name, walk speed, etc), I decided to create it in ini files instead. This way, if I need to tweak things with monsters or npcs I can just update an INI file and restart the server rather than creating a whole new server build. I plan to do this for items as well.

Other Changes

~ Sometimes code that needed obj_player was running before obj_player was created resulting in a crash has been fixed.

Survival MMO Devblog #10!

Version: 0.4.8
Goal: A 1.0 Playable Multiplayer ALPHA Version!

Game Design

I’ve been watching and listening too a lot of talks on game design. I’ve probably learned more in the past two months about what makes a game great than in the past 10 years of making indie games! Here are 3 that I’ve recently listened too. Enjoy!

Lessons Learned Making Gunpoint Quickly Without Going Mad
Secrets of Game Feel and Juice | Game Maker’s Toolkit
30 Things I Hate About Your Game Pitch

Game Direction

Originally, this game was to be a 2d clone of games like Rust, Ark and DayZ. However, as I began to research the survival genre I got more and more disinterested in going this direction. I still plan to have all the same survival element features in this game that I’ve discussed in other devblogs and videos – however, they will be presented in a much different way.

I don’t want to give too much away, right now, however just know that this game will not be some kind of a “hardcore” survival game as I previously intended.

Base Building Prototype

Not sure if I’ll keep this or not, but it’s a neat concept! The base design could work like this…
1. You place a cheap starter base
2. Use resources to upgrade it and make it bigger/add more room inside
3. Outside and inside completely customizable

You don’t actually change rooms when you walk into the base. This is nice because you’ll still be able to hear any noise people are making around your base!

Room Changes

I re-worked how “rooms” work for the client and server. Upon players changing rooms: the CLIENT will actually change rooms. The SERVER will just change clients x/y inside of the main server room so it can do proper calculations. I’ve also set up a system using ds_grids that gives each room a unique id. That way I can add special information specific to each room.

Room Transitions

I ran into a few issues with this. Mainly with walking. When you’d run into the object to change your room, once you transitioned rooms your character would keep walking with no way to stop him. Had to re-work some code with movement to make this work smoothly!

Player shadows

Players now have cute little shadows. I may play around with these. Maybe cause them to change color if you click on a player..

Server UI Overhaul

For my own convenience, I’ve overhauled the server UI. It was getting very messy, which was causing me to make a lot of mistakes. So I did some cleaning up πŸ™‚

Other Changes

~ Removed some of the outline to the players sprites to make them look better
~ Fixed up Node spawning (rewrote script). Before you could only have 100, now you can spawn in as many as you’d like.
+ Animals and Nodes are now assigned specific rooms.

Sign up for free Alpha version key

Depth Base Mouse Collision

Mike Daily posted an amazing blog on depth based mouse collision. Had to share it! This is something that I believe everyone will need to know in one of their games, eventually. So check it out HERE!