LOCAL multiplayer and Characters Customization

Hi guys,
I know that competitive local multiplayer games are not that hype but I’m having a hard time finding threads about them.
My main problem is I’d like my players to have the ability to “level up”, “loot” and other usual stuff you would find in a online competitive game but all this locally, the old-school way !

To give a clear example, I’m aiming for a Towerfall Ascension-like with “build” and “customization” integration.

The main issue I’d like to discuss would be :

1 : how to assign a unique character to one player and have persistent data ?

  • the easy one : store locally different characters, and make the players pick’em up on a lobby screen.
    *pros : it’s easier to implement, cheap.
    *cons : it’s LOCAL as hell ! one copy sell for 4 players

  • a steam/PS/XboxLive account, like any online game. (I think that’s what Gauntlet does ?)
    *pros : the character is unique and playable only by you. you can access it everywhere, 1 copy of the game/user otherwise the user can play as guest (and default character), you can have an in game shop
    *cons : Every player has to log in to play, bothering ?
    and… I have NO IDEA how to do implement that from a hosting and scripting standpoint…
    I guess I would need a server and some sort of sql implementation (extra costs).

Any advice, example or input would be greatly appreciated !!
:slight_smile:

Sorry to up this one but PLEASE O:)

Consider making an intermediate layer called something like CharacterManager.

On the front end, CharacterManager can return a list of characters, and retrieve and store character data. The rest of your game will just use those three functions: get list of characters, retrieve character data, store character data.

On the back end, CharacterManager can maintain locally-stored characters for now. Get your game working like this. Later, you can replace the back end to work with Steam, Xbox Live, etc., without affecting the rest of your game.

Hi Tony !
Thank you so much for your input :slight_smile:

I read a lot of good stuff from you in many threads; you rock ! :wink:

It may seem trivial but your intermediate layer that separates gameplay logic from data storing really makes it clearer in my mind.
I already built a simple binary save system that stores my PlayerStatistics (for another single player game) i guess it shouldn’t be so hard to make it serialize a list of multiple PlayerStatistics and sorting it by playerName so the players can get their characters back.

My problem was I was anticipating the “account system” but I guess Steam and others might be able to help out when the time will come :slight_smile:

Glad I could help!

This kind of decoupling isn’t a 100% cure-all, but it does help to modularize and isolate pieces that might change in the future. Best of luck with your game!