I’m currently in the midst of developing a game that is basically an isometric farming-simulator, constrained to a 2D view, with combat and world travel. It seems like an open-world but the towns load in small scenes that have invisible walls surrounding them. Players travel via a map function from town to town.
The game will look and function very similarly to MMORPGs and games like Farmville 2: Country Escape but will only be available as a single-player game.
My initial idea was to have this game be a MMORPG but after looking into it and where to start learning for networking, servers, hosting, lowering a game’s PC usage etc. I quickly found that there were several obstacles that I didn’t anticipate and with my current budget and knowledge I wouldn’t be able to achieve this to a satisfactory standard.
Getting realistic about my situation I realised the next best thing that I could do with what I know is a single-player game that retains most of the same functions that the multiplayer would have.
Most of the features from the MP are scrapped for now and others have been jiggled to fit the play style of a SP game. However, there are two MP things that I wanted to try to keep regardless of the game now being SP – The ‘Marketplace’ and a building called ‘The World Museum’.
The Marketplace acts like you would expect: Put up an item > Set the price > Wait for purchase > Collect sales. And vice versa: Search Item > Pay Price > Immediate collection of Item.
Players wouldn’t ever see each other or be able to communicate via the marketplace, just sending and receiving items that could have been posted anywhere from a player in the real world. I’m guessing for something like this I would still need some sort of server to store this information(?).
The World Museum is essentially a leaderboard or a trophy case for players. It keeps track of stuff like the biggest fish caught that day, month and/or all-time and the player that caught it or the biggest minerals/gems found in the player’s world with sub-categories like the biggest Ruby, Diamond, Topaz etc.
My main questions are:
After scrapping about 70% of the additions MP would bring, would having these remaining MP buildings in an otherwise SP game be worthwhile or should it be scrapped with the rest of the MP development? I’m talking about the resources and the costs of acquiring them to make the MP additions a possibility in the SP version.
If it IS possible to include, how easy with a small budget and a team of one, hardworking, eager to learn indie-developer, would it be to implement into my game?
If there were no limitations, in terms of resources and costs, then what WOULD be needed to make a small integration like this? Or maybe just some pointers in the right direction for further future research and learning.
Thank you in advance for any responses or constructive feedback!
My experience is it is important to include multiplayer as early as possible in your project. The longer you wait, the more you rewrite.
You’re going to need a server that acts as the marketplace, and likely a database to store all items on the market that only the server can access. You’re going to want some kind of authentication system for the market (username/password or similar), which if you already have one when entering the game you could just use that.
There’s lots of ways you could design the actual communication, from just messages or individual packets, to shared objects with the server and running commands/RPCs.
You could also write the server in something completely different, such as web based and your game client just makes http or even rest calls. I did this for a single player game’s global high score feature once. Make sure you consider security when you implement this, as it won’t take long for a player to figure out how to duplicate items, etc, if they can just play with calls to the server.
I’d use the same marketplace server to also host the world museum. It would just be a different set of tables in the db.
Thank you for the answer, gives me some other things to consider.
After posting I was actually considering just having AI for the different crafts in the game and NPCs in the store fronts then having the shop items change. It shows how it would function in MP whilst still being SP and giving a feel for other players.
I’ve seen a few other places mentioning to develop the MP features from right off the bat as well but I’m intending to have several different things in MP and the SP items would behave differently too so I’m not sure that would be ideal for my game right now.
I will look into all of that further though before making a concrete decision on the direction, thank you again!