Author Topic: Coding a 2 player clone, networked, with "original" game mechanics  (Read 4017 times)

0 Members and 1 Guest are viewing this topic.

Offline ludolpif

  • Posts: 5
    • View Profile
Hi there,

I hope that almost everything is in the topic title  :)

I'm a French guy, so... sorry about my English. I have many questions for fans, players and may be coders :

1) Environnement
I plan to use the SDL2 lib which officially supports Windows, Mac OS X, Linux, iOS, and Android. I think I will not do anything for the last two (network nightmare and legal issues).
I plan to read levels in Lemmini format. I will have to add some extra info, like entry/exit "color".
I plan also put everything in open-source. Say GPL3.
Do you think that are confortable choices for fans and players ?

2) Legal
I know that Sony send a letter "against" a coder that put lemming on some Mobile Apps Market. Is there someone here that have more informations than me about legal issues. Where is the limit ?
I plan to depend on some graphics importer code like in Lemmini.
I plan to be closer than Lemmini about "original" game mechanics. Could be a legal problem ?
I hope using a good music engine for older 8-bit music too.

3) Behavior and game mechanics
For you, what game mechanics will fit right in multiplayer mode ?
I plan to immitate the DOS version. Because I think it is somewhat close to "original" Amiga and because I am a bit lazy : it seems to be technically easier to manipulate DOS version for comparing algorithm behaviors. In other words : DosBox is my friend.
I know this is a big work. I've read the glitch and tricks pages on this forum... Wow, impressive work to put those very detailled things here. Imitate all those messy things will be hard. Very hard. Asymmetry problems are a good inspiration for face palming   :scared:
Keep in mind : two player mode. Maybe ONLY two player mode.

Could we build together an ordered list of behaviors from the most important to keep to the less important ?
Wich order use for update lemmings (and terrain/steel) ? If I just update all player #1 lemmings and altering the terrain, then all player #2 lemmings, you will want to kill me, right ?  :P

4) Coding and game mechanics
Where are the most geek-readable details about game mechanics. I want to say : it okay to have a list with "it should behave like that", but for coding, I have to now details like the translation between sprite coord (x,y) and effective coordinate of a walker is (x+3,y+7) if facing right... At each frame, for a walker, I will test if there is terrain at (?,?) and (?,?) and there is a line of ? pixel high, I will do that, else, I will do...

This point is capital for me.

Sorry about the lenght. I hope that you will found this as an attractive thing :)
If there is some coders that want help, just let me know !

Ludovic

Offline GuyPerfect

  • Posts: 363
    • View Profile
Re: Coding a 2 player clone, networked, with "original" game mechanics
« Reply #1 on: August 13, 2013, 08:52:24 PM »
I know that Sony send a letter "against" a coder that put lemming on some Mobile Apps Market. Is there someone here that have more informations than me about legal issues. Where is the limit ?

I'll let you decide where you want to go, but the laws in the United States present the following restrictions:

You cannot use the Lemmings property to benefit yourself in any way. You can't sell it, and you can't advertise with it. These are rights held by the copyright and trademark holders respectively, both of which are Sony.

You cannot distribute or reproduce copyrighted content in any way. This includes official levels, artwork (including "sprite" pixel patterns and "tilesets"), original music and any game lore that Sony still holds the copyright to.

It's possible you can get permission from Sony to make a fangame, but don't count on that. As far as I know, the only producer that has ever given that permission is Nintendo, who allows anyone anywhere to make fan games in homage so long as they are not damaging to the properties in question.

Offline ludolpif

  • Posts: 5
    • View Profile
Re: Coding a 2 player clone, networked, with "original" game mechanics
« Reply #2 on: August 13, 2013, 09:57:30 PM »
Thanks for this precise reply.
So, I think it's okay if I go with content importer like Lemmini for copyrithed data.
It will be open-source and free, no problem with that aspect. No profits, keeping everything in fangame way of thinking.
Only one point remaining : code. What happens if my game mechanics code is too close to theirs ?
Thanks,

Offline GuyPerfect

  • Posts: 363
    • View Profile
Re: Coding a 2 player clone, networked, with "original" game mechanics
« Reply #3 on: August 13, 2013, 10:32:47 PM »
What happens if my game mechanics code is too close to theirs ?

The game mechanics themselves may or may not fall in the realm of patented processes. Most innovations in the computer industry these days (especially video games) are patented, and anyone else wanting to make use of the same or similar features are required to pay a license to the patent holder. I don't know if Sony holds any patents for any aspect of Lemmings.

As for the code, it doesn't really matter how similar it is to theirs unless there's evidence you stole it from them. That would qualify as a violation of their copy right.

In any case, there's a certain degree of "fair use" in this project, which will make you exempt from most or all of the applicable laws. You're not benefiting from it, and you're not causing Sony any damages (you're not taking their customers away from them, etc.), so unless they decide they want to personally stop you from doing what you're doing, you'll be able to get away with it.

Offline RubiX

  • Posts: 430
  • Amiga <3 The memories
    • View Profile
Re: Coding a 2 player clone, networked, with "original" game mechanics
« Reply #4 on: August 14, 2013, 06:57:27 PM »
Theres already a great clone with the2player mode, with the original mechanics made with SDL
I have had issues trying to get it running on Win7 for some reason, but its fine on my XP machine.

http://lessermatters.homeunix.com/LemmingsSDL/




How about make a 2player version of Lemmings2:The tribes? Could be super fun.    All those abilities should take some time to make :)

Offline Simon

  • Administrator
  • Posts: 3860
    • View Profile
    • Lix
Re: Coding a 2 player clone, networked, with "original" game mechanics
« Reply #5 on: August 15, 2013, 05:34:18 AM »
Hey,

1) Environnement
2) Legal
3) Behavior and game mechanics
4) Coding and game mechanics

1) Free and open source with release early, release often is much preferred here to anything else, yes. The exact choice of license is a lesser important detail. I'd just put everything in the public domain, so others wouldn't have any merging hassle and I dislike copyright anyway, but GPL is also very good. SDL sounds like a good choice.

2) Don't use the trademark Lemmings in the name, and don't recycle too many graphics right from the source game. Sony is the ickiest company of all. Github.com has a list of cancelled projects due to legal complaints, and nearly everything on the list was pulled because of Sony. Lemmini requires Lemmings for the graphics, but everything else is done in its very own way, including game mechanics.

Do not ask Sony for permission under any circumstances. You will get a takedown notice, they don't care at all about the details. (This again is company-specific advice.)

3) You could stay 100 % close to the DOS mechanics, but that has the legal issues as well as horrible things like the left-right assymmetry and all the behavorial bugs. It's probably best to roll your own here, or remain close to other free projects like Lemmini.

You can be as elaborate with fairness as you want. Lix updates all the workers in player order, then all non-workers in player order. This feels very fair already. Builders do not fall when they have no terrain underneath, and bashers have some leeway with missing terrain underneath, they can step downwards without getting cancelled. In addition, player order is randomized at the start of the game.
 
4) I've used effective coordinates and similar evident methods before knowing how L1 handles it and before reading ccexplore's descriptions. You won't get shafted by doing useful things in the code.

5) Additional info even though nobody has asked for it: Making a two-player game and making a multiplayer game is not that different. ;-) Two-player will still be the most-played mode.

Have fun!
Simon

Offline ludolpif

  • Posts: 5
    • View Profile
Re: Coding a 2 player clone, networked, with "original" game mechanics
« Reply #6 on: August 16, 2013, 01:22:16 PM »
Thanks RubiX for mentionning that LemmingsSDL exists.
I didn't found it when I've search about fangames with 2 player mode. Shame on me.
I can't run it for now : tried under Linux, big segfault. Corrected the code. Now can't type server's IP address... So I wrote to the guy that appears to be the author.
Lemmings 2 : The tribes. I never played this game. I have to start there !

Ludovic

Offline ludolpif

  • Posts: 5
    • View Profile
Re: Coding a 2 player clone, networked, with "original" game mechanics
« Reply #7 on: August 16, 2013, 01:24:54 PM »
Thanks Simon for all aspects.
1) Yes, GPL or Public domain : I will think about that. GPL for me is my "by default" way of thinking about code :)
2) I'm afraid that these issues will make me change some of root ideas in this project :-/ May be it could be positive. I have to make this positive ! But I already spent time on the DOS version, so, I will take moment for thinking about "the goal" now.
3 & 4) "Historically", I know Lemmings mainly by one port : the ATARI one. I used to play on it with a  great friend... Somewhat like 15 years ago. So, for me it was obvious that is the best one :D But, I read glitch lists, see the mess-up, and now your suggestions. I went wrong, for sure !
5) Yes, I will never write code that is bound to 2 players max. I just plan to have a 2-player version that works well before try to write things that will not be very easy to test and... to play :)

Offline GuyPerfect

  • Posts: 363
    • View Profile
Re: Coding a 2 player clone, networked, with "original" game mechanics
« Reply #8 on: August 16, 2013, 09:58:23 PM »
I will never write code that is bound to 2 players max. I just plan to have a 2-player version that works well before [...]

Always always always always always design for n players, or n whatevers. It's much easier to restrict an n-player system to 2 players than to try to modify a 2-player system to some number greater than 2. And then, down the line, that number to some yet greater number.

Offline ludolpif

  • Posts: 5
    • View Profile
Re: Coding a 2 player clone, networked, with "original" game mechanics
« Reply #9 on: August 17, 2013, 10:59:22 PM »
GuyPerfect : no problem with that. Code will be for N from the beginning, but I will not make all the stuff needed/suited for more than 2 players in the first shot. Let's say : levels, wait screen with players list that are not ready yet, vote system and so on.