Jump to content

  • Log In with Google      Sign In   
  • Create Account

Banner advertising on our site currently available from just $5!


1. Learn about the promo. 2. Sign up for GDNet+. 3. Set up your advert!


The great GD.net collaborative coding horror experiment? (...and the results are in!)


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
65 replies to this topic

#21 slicer4ever   Crossbones+   -  Reputation: 4978

Posted 23 October 2013 - 11:59 AM

This....is going to be a thing of beauty.

Edit: since this will be a single file, could we simply use a google doc, so multiple people can edit at the same time. Not sure how well this would work with code, and also not sure how well google identifies who has made what changes.
Check out https://www.facebook.com/LiquidGames for some great games made by me on the Playstation Mobile market.

Sponsor:

#22 TheComet   Crossbones+   -  Reputation: 2061

Posted 23 October 2013 - 12:35 PM


Why not just jump over the offending code? >=D

A splendid and well thought through idea!

 

I have one more request: Can we completely exclude external assets? I think it would be much easier to work on this if it's all dumped into one gigantic source file for easy copying and pasting. It could get quite messy and painful if everyone starts throwing their zip files all around the place. Again, just inline the assets.


Edited by TheComet, 23 October 2013 - 12:36 PM.

YOUR_OPINION >/dev/null

#23 CombatWombat   Members   -  Reputation: 539

Posted 23 October 2013 - 12:57 PM

Can we completely exclude external assets?

 

Ideally the sprites should be hand coded as arrays. 

Or std::maps with x,y hash key and an RGB struct.



#24 TheComet   Crossbones+   -  Reputation: 2061

Posted 23 October 2013 - 03:23 PM

And obviously, the xy hash key should be encoded as a char array (allocated by "new") and not have a null terminator for efficiency


YOUR_OPINION >/dev/null

#25 molehill mountaineer   Members   -  Reputation: 595

Posted 23 October 2013 - 03:29 PM

Sounds good for a larf - I vote c++ (I don't actually know SFML but since the S stands for simple I can't imagine it'll be too hard to pick up)



#26 rip-off   Moderators   -  Reputation: 9788

Posted 23 October 2013 - 04:28 PM

Can we completely exclude external assets?

That is certainly an option. I believe the GIMP has a built-in way to export an image as C source.

The downside is for large assets the code becomes very verbose, this will probably affect the thread load time and the performance of the syntax highlighter.

I had been thinking that an asset is posted just once - in the post that created it, not maintained as a ZIP in each post. That way, if you want to contribute you just need to download any assets that have been created since you last contributed.

Edit: since this will be a single file, could we simply use a google doc, so multiple people can edit at the same time. Not sure how well this would work with code, and also not sure how well google identifies who has made what changes.

Interesting idea, but I like the thought of seeing the history of the progress directly here. I also am intentionally trying to minimise the barriers to entry, otherwise I'd be using Github or something rather than specifying that a GD.net thread as a version control system.

#27 wintertime   Crossbones+   -  Reputation: 3021

Posted 23 October 2013 - 04:39 PM

Do you really think you need art for such an experiment? You could just generate some bitmaps in memory procedurally, which could add some interesting code.



#28 swiftcoder   Senior Moderators   -  Reputation: 14453

Posted 23 October 2013 - 04:55 PM

Do you really think you need art for such an experiment? You could just generate some bitmaps in memory procedurally, which could add some interesting code.

+1

Procedural generation FTW.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#29 Bacterius   Crossbones+   -  Reputation: 11537

Posted 24 October 2013 - 02:39 AM

Do you really think you need art for such an experiment? You could just generate some bitmaps in memory procedurally, which could add some interesting code.

 

+1, and I second the C suggestion as well (though for making a mess C++ is unparalleled).

 

Also, I don't think google docs would work out, really. By the time you get to compile and test your stuff someone will have edited the google docs, and by the time you've merged someone else will have probably broken what you were working on, requiring you to fix your code, and so on. That said, the "don't remove or alter code" does make merging changes quite a bit easier, assuming steps are taken to make sure commits are consistent with one another (i.e. one doesn't logically conflict with the other). But maybe it's part of the experiment to battle with another member until some kind of equilibrium is reached tongue.png


“If I understand the standard right it is legal and safe to do this but the resulting value could be anything.”


#30 jbadams   Senior Staff   -  Reputation: 23296

Posted 24 October 2013 - 03:13 AM

Love it, and topic pinned! smile.png

 

Once you sort out all the details and get this thing started -- assuming you decide to go ahead -- might I suggest pinning the official topic in the "coding horrors" forum for the duration and linking from the lounge like the "PUTT" contest is currently doing?

 

 

It'll be interesting -- and terrifying -- to see what's produced!



#31 TheComet   Crossbones+   -  Reputation: 2061

Posted 24 October 2013 - 06:02 AM

I wonder if David Rosen himself is going to find this thread and contribute.


YOUR_OPINION >/dev/null

#32 swiftcoder   Senior Moderators   -  Reputation: 14453

Posted 24 October 2013 - 06:17 AM


I wonder if David Rosen himself is going to find this thread and contribute.

For a minute I thought you meant the 83 year-old former CEO of SEGA.

 

Then I realised what spawned this thread.


Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#33 Chad Smith   Members   -  Reputation: 1267

Posted 24 October 2013 - 01:47 PM

This will be brilliant.

 

Just the vast amount of different coding styles alone will be interesting to see in one file.  I get the sense we are going to see A TON of global variables. 

 

Maybe I misread it somewhere but will their a end goal that we are to strive for?  As in will what is added to the code actually be of "use" to the project?  Or could I just say go and implement a simple/stupid game inside and force everyone to work around that?

 

My vote goes to add whatever you want.  Just to see how scary what we end up producing would be...


Edited by Chad Smith, 24 October 2013 - 01:49 PM.


#34 Buster2000   Members   -  Reputation: 2644

Posted 25 October 2013 - 05:50 AM

I'd vote for doning this in Javascript or some other language that can be embedded into a page (python, ruby ??).  That way the game and a built in editor could be embedded as a sticky at the top of the forum (similar to JSFiddle) so everybody could see live updates of the game.

 

Using ANSI C is cool and everything but I think as a more fun forum experiment live coding in the webpage would be a lot more fun.



#35 TheComet   Crossbones+   -  Reputation: 2061

Posted 25 October 2013 - 09:12 AM

Well, I've never coded Javascript in my life, so if we do decide for that language, I guess I can only contribute to its messiness. happy.png


Edited by TheComet, 25 October 2013 - 09:13 AM.

YOUR_OPINION >/dev/null

#36 Alpha_ProgDes   Crossbones+   -  Reputation: 4968

Posted 25 October 2013 - 10:08 AM

Why don't we use HTML5 and Canvas?

 

 

I'd vote for doning this in Javascript or some other language that can be embedded into a page (python, ruby ??).  That way the game and a built in editor could be embedded as a sticky at the top of the forum (similar to JSFiddle) so everybody could see live updates of the game.

 

Using ANSI C is cool and everything but I think as a more fun forum experiment live coding in the webpage would be a lot more fun.

 

Obviously, I agree with this. What better way to get horrible coding than with a language that people know enough to be dangerous in and can get instant feedback from. And who doesn't have Chrome, Firefox, or IE10?


External Articulation of Concepts Materializes Innate Knowledge of One's Craft and Science
 
Beginner in Game Development? Read here.
 
Super Mario Bros clone tutorial written in XNA 4.0 [MonoGame, ANX, and MonoXNA] by Scott Haley
 
If you have found any of the posts helpful, please show your appreciation by clicking the up arrow on those posts Posted Image
 
Spoiler

#37 FuzzyRhombus   Members   -  Reputation: 773

Posted 25 October 2013 - 03:34 PM

This sounds awesome. I've been wanting to be more active on here/contribute to little projects and contests. This would be a great way without putting any stress or taking up a lot of any single person's time.

 

Nevermind this...

These are kind of conflicting if it's to be truly cross-platform and native. What about X calls on linux? And on Mac unless you launch from shell and use fullscreen only it's pretty close to impossible to have a game running without some Obj-C (unless you opt for X as well I suppose). I haven't done anything Windows in a very long time but I'm pretty sure you'd need some specific calls, HWND's and all that junk to get something running as well haha.

I think that should be the only area allowed to have those dependencies, just so it can get up and running.

Of course this wouldn't matter if it's browser based. Or Java.

 

 

Do you really think you need art for such an experiment? You could just generate some bitmaps in memory procedurally, which could add some interesting code.

+1

Procedural generation FTW.

 

All for procedural! =D

 

 

I'd vote for doning this in Javascript or some other language that can be embedded into a page (python, ruby ??).  That way the game and a built in editor could be embedded as a sticky at the top of the forum (similar to JSFiddle) so everybody could see live updates of the game.

 

Using ANSI C is cool and everything but I think as a more fun forum experiment live coding in the webpage would be a lot more fun.

I prefer C/C++, but if it's all to be one file I think C would be better in this case. Somewhat cleaner, but also a little more challenging.

I don't have as much experience with browser-based langauges; never used Ruby, and only used Python when helping (doing lol) my gf in a programming class years ago.

Buuuut, I'd be down to play with any of them! All the more fun.

This would get around the dependencies and cross-platform concerns, and would be quicker to get up and running than something like Java, even if it only needs to be compiled once. The instant feedback argument is a strong one. Especially in a case like this.


Edited by FuzzyRhombus, 26 October 2013 - 07:17 PM.


#38 Cornstalks   Crossbones+   -  Reputation: 7003

Posted 25 October 2013 - 03:49 PM

Heck to the yes!
 

I'd vote for C++03 and SFML, though C99 and SDL would be my second choice. +1 for procedural.

 

I assume there's an implicit rule that you cannot add to the code (again) until someone else has? (so you don't add a commit, then immediately add another; you have to wait for someone else to add a commit before you can add another) Also, I don't know if you plan on keeping any kind of actual repo, but if you're not I wouldn't mind making a git repo and updating it with each post to keep a "proper" history.

 

And if this works well, can we please do this annually?


Edited by Cornstalks, 25 October 2013 - 03:52 PM.

[ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]

#39 Chad Smith   Members   -  Reputation: 1267

Posted 25 October 2013 - 06:27 PM

This sounds awesome. I've been wanting to be more active on here/contribute to little projects and contests. This would be a great way without putting any stress or taking up a lot of any single person's time.
 
 

  • Dependencies are limited to the standard library and the multimedia library only. No OS-specific calls
  • The code must compile on your platform of choice, and should strive to be cross platform
These are kind of conflicting if it's to be truly cross-platform and native. What about X calls on linux? And on Mac unless you launch from shell and use fullscreen only it's pretty close to impossible to have a game running without some Obj-C (unless you opt for X as well I suppose). I haven't done anything Windows in a very long time but I'm pretty sure you'd need some specific calls, HWND's and all that junk to get something running as well haha.
I think that should be the only area allowed to have those dependencies, just so it can get up and running.
Of course this wouldn't matter if it's browser based. Or Java.
With SFML like was originally proposed I am almost positive you can get a window up and running with the exact same code. For the most part if people use standard C++ calls and didn't get absolutely crazy with SFML(I think their are a few calls that act different on the different OS's) then it should compile just fine for everyone. I just migrated my SF code over to Linux from Windows and it compiled and ran without one problem. That's the beauty of SFML. How easy it is to get going with it and how easy it is to work with other OS's

#40 slicer4ever   Crossbones+   -  Reputation: 4978

Posted 26 October 2013 - 09:17 AM

Heck to the yes!
 
I'd vote for C++03 and SFML, though C99 and SDL would be my second choice. +1 for procedural.
 
I assume there's an implicit rule that you cannot add to the code (again) until someone else has? (so you don't add a commit, then immediately add another; you have to wait for someone else to add a commit before you can add another) Also, I don't know if you plan on keeping any kind of actual repo, but if you're not I wouldn't mind making a git repo and updating it with each post to keep a "proper" history.


+1 fot c++. although i am not opposed to using html5/javascript, it'll finally give me reason to learn canvas.
Also like the idea of not allowing double edits, have to live with what you create.

Edited by slicer4ever, 26 October 2013 - 09:18 AM.

Check out https://www.facebook.com/LiquidGames for some great games made by me on the Playstation Mobile market.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS