Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Pfhreak
Jan 30, 2004

Frog Blast The Vent Core!
I've been working on figuring out how Marathon stores its map data so I can render in a web browser. It's been a deep dive through some very clusterfucked code, but I finally got the points, lines, and polygon data out of the file and into a canvas element.



It's a fun reverse engineering project so far. Next up comes learning enough WebGL to render it in 3D.

Adbot
ADBOT LOVES YOU

Bob Morales
Aug 18, 2006


Just wear the fucking mask, Bob

I don't care how many people I probably infected with COVID-19 while refusing to wear a mask, my comfort is far more important than the health and safety of everyone around me!

Pfhreak posted:

I've been working on figuring out how Marathon stores its map data so I can render in a web browser. It's been a deep dive through some very clusterfucked code, but I finally got the points, lines, and polygon data out of the file and into a canvas element.



It's a fun reverse engineering project so far. Next up comes learning enough WebGL to render it in 3D.

Cool, never sen it for marathon. What is the basic idea of how they are stored, lines and sectors like doom? What are the circles?

Pfhreak
Jan 30, 2004

Frog Blast The Vent Core!

Bob Morales posted:

Cool, never sen it for marathon. What is the basic idea of how they are stored, lines and sectors like doom? What are the circles?

From what I've been able to discern there are a number of chunks in the map file -- lines, points, polygons, sides, mission info, objects and a number of other things I'm not sure about yet. The circular areas are just polygons with many sides to make them look circularish.

Hanpan
Dec 5, 2004

Does anyone know if it's possible to listen for Box2D collisions using libgdx? I have an object with a sensor body attached and I want to be alerted to any collisions that happen on that particular body. I love libgdx but the documentation is awful at best.

Harvey Mantaco
Mar 6, 2007

Someone please help me find my keys =(
Hey guys, there seem to be a lot of options out there and I don't really know which to go with because I don't know the basics of any of them really. When all characters exit a "level" of a dungeon I want to freeze dry that fucker and package it away with all the entities in it saved, along with the dungeons layout (since it was dynamically created. I want to save that data short term during the programs lifecycle but also for next time they log in. This is in Java, mind you. I'm thinking of moving this to android POSSIBLY and someone suggested I don't want to use a muffin because that will cause some issues. I'm a little confused about what a muffin is really, and I don't know if this is even what I should be looking at!

I was wondering what my options are for saving this information for later, and then loading it back in if that level is returned to.


Second point - googling Java related things is pretty :lol:. If you google Java, beans and muffins you just get coffee shops and muffin places. It's kind of annoying.

Bocom
Apr 3, 2009

No alibi
No justice
No dream
No hope
Man, every time one of you people post something cool, I get really sad and embarrassed that I can't get tile-based collision working. :(

OtspIII
Sep 22, 2002

So how do you more experienced programmers deal with turn-giving in a turn-based game where not all turns are the same length? As in, the game is turn based, but there's no over-arching 'turn' concept where everyone takes one action, then the turn ends and everybody takes another action. Instead, everyone goes one at a time but different actions can force you to wait more or less time until your turn comes around again. This is in C#, I guess I should mention.

I ended up just making a Time int and a TurnQueue Dictionary<int,character> on my world class. Whenever someone finishes their turn the Time int just crawls upwards one number at a time until it hits a number that corresponds to a number in the TurnQueue.Keys, then it starts the turn of the corresponding character, which triggers AI or a wait for player input or whatever. Whenever you end your turn you delete your current place in the Queue and sign yourself up for another turn in X units of time, X being based on how slow the action you chose to do during your turn is.

Does that seem pretty standard? Are there any great essays on how to handle turns in turn based games that I missed that sound relevant to this? It seems to work pretty well for me so far, but I'm sure that this has been done a thousand times before by people more innovative than me, so I'm sure there must be better ways to handle it, too.

Jo
Jan 24, 2005

:allears:
Soiled Meat

Bocom posted:

Man, every time one of you people post something cool, I get really sad and embarrassed that I can't get tile-based collision working. :(

I had a REALLY hard time with this, too. It worked for single boxes, but multiple ones killed me. Finally got it working perfectly after many painful hours. Here's the code I used.

code:
	/**
	 * If the argument rectangle overlaps a blocking space, this calculates the 
	 * minimum push required to move out the rectangle and applies it.
	 * @param actor The entity to be moved.
	 */
	public void collide(Movable actor) {
		if(!loaded) { return; }
		
		Rectangle actorRectangle = actor.getRectangle();
		Rectangle mapRectangle = scaleAndClipRectangle(actorRectangle);
		Rectangle tile = new Rectangle(0, 0, tileSizeX, tileSizeY);
		mapRectangle.width++;
		mapRectangle.height++;
		Point push = new Point(0,0);
		Point dPush;

		// Iterate through each tile that the actor overlaps in the map.
		// Find the biggest push on the player.
		for(int y=mapRectangle.y; y < mapRectangle.y+mapRectangle.height; ++y) {
			for(int x=mapRectangle.x; x < mapRectangle.x+mapRectangle.width; ++x) {
				int i = xyToI(x,y);
				if(layers[COLLISION_LAYER][i] != Map.OPEN_TILE) {
					tile.x = tileSizeX*iToX(i);
					tile.y = tileSizeY*iToY(i);
					if(actorRectangle.intersects(tile)) {
						dPush = getBlockPush(i, actorRectangle);
						if(Math.abs(dPush.x) > Math.abs(push.x)) {
							push.x = dPush.x;
						}
						if(Math.abs(dPush.y) > Math.abs(push.y)) {
							push.y = dPush.y;
						}
					}
				}
			}
		}
		
		if(push.x == 0 && push.y == 0) {
			return;
		}
		
		actor.move(push.x, push.y);
		if(Math.abs(push.x) > Math.abs(push.y)) {  // This time we use the GREATER push.
			actor.setXVelocity(0);
		} else {
			actor.setYVelocity(0);
		}
	}
And the support code using Axis Aligned Bounding Box pushes (sorta' taken from the Metanet tutorials):

code:
	private Point getBlockPush(int i, Rectangle a) {
		int halfWidth = (a.width+tileSizeX)/2;
		int halfHeight = (a.height+tileSizeY)/2;
		int distX = (int)(a.getCenterX()-(iToX(i)*tileSizeX+(tileSizeX/2)));
		int distY = (int)(a.getCenterY()-(iToY(i)*tileSizeY+(tileSizeY/2)));
		int xSign = distX < 0 ? -1 : 1;
		int ySign = distY < 0 ? -1 : 1;
		int xPush = Math.abs(Math.abs(distX)-halfWidth);
		int yPush = Math.abs(Math.abs(distY)-halfHeight);
		if(xPush >= yPush) {
			xPush = 0;
		} else {
			yPush = 0;
		}
		return new Point(xSign*xPush, ySign*yPush);
	}

Jo fucked around with this message at 06:21 on Apr 16, 2012

Harvey Mantaco
Mar 6, 2007

Someone please help me find my keys =(

OtspIII posted:

So how do you more experienced programmers deal with turn-giving in a turn-based game where not all turns are the same length? As in, the game is turn based, but there's no over-arching 'turn' concept where everyone takes one action, then the turn ends and everybody takes another action. Instead, everyone goes one at a time but different actions can force you to wait more or less time until your turn comes around again. This is in C#, I guess I should mention.

I ended up just making a Time int and a TurnQueue Dictionary<int,character> on my world class. Whenever someone finishes their turn the Time int just crawls upwards one number at a time until it hits a number that corresponds to a number in the TurnQueue.Keys, then it starts the turn of the corresponding character, which triggers AI or a wait for player input or whatever. Whenever you end your turn you delete your current place in the Queue and sign yourself up for another turn in X units of time, X being based on how slow the action you chose to do during your turn is.

Does that seem pretty standard? Are there any great essays on how to handle turns in turn based games that I missed that sound relevant to this? It seems to work pretty well for me so far, but I'm sure that this has been done a thousand times before by people more innovative than me, so I'm sure there must be better ways to handle it, too.

I just wrote up my algorithm for this tonight. Say everyone gets a speed value, 1 to 20. Player character is say ten. Start counter at 1. All 1s get a turn, then 2s, then 3s, and so on. When the players turn is reached start over. Also, whenever someone takes a turn their new temp speed value is increased by their base amount. So someone with a speed of 4 will go once at 4, then again at 8 then 12 etc. When the player gets to go let's say a monster had a speed of 4. Well it would have went at 4 and 8, then counted 2 points (wasted) before the player went at 10. Those 2 wasted points get rolled over on the next turn and the monsters first turn will be at 2, then 6 then ...etc. iPad typing so sorry if that is kind of short, if you need more detail let me know. I am also reinventing all kinds of wheels :)

I may have a simpler combat engine than you so mine may not work for you.

Unormal
Nov 16, 2004

Mod sass? This evening?! But the cakes aren't ready! THE CAKES!
Fun Shoe

OtspIII posted:

Does that seem pretty standard? Are there any great essays on how to handle turns in turn based games that I missed that sound relevant to this? It seems to work pretty well for me so far, but I'm sure that this has been done a thousand times before by people more innovative than me, so I'm sure there must be better ways to handle it, too.

In Caves of Qud, I keep a big round-robin queue of active objects. One at a time they get dequeued and their "speed" (around 100) gets added to their "energy". If they have 0 or more energy, they get to do whatever they want until their energy drops below 0, and they go to the back of the queue. Most actions take 1000 energy, more or less.

For purposes of global time tracking, for things that need a time outside of when an action is taken, I count one full round robin of the queue as a segment (I use a sentinel NULL value to track one full round robin). Ten segments is a turn (since a typical 100 speed creature performing typical actions will get 1 action per 10 segments).

OtspIII
Sep 22, 2002

Unormal posted:

In Caves of Qud, I keep a big round-robin queue of active objects. One at a time they get dequeued and their "speed" (around 100) gets added to their "energy". If they have 0 or more energy, they get to do whatever they want until their energy drops below 0, and they go to the back of the queue. Most actions take 1000 energy, more or less.

For purposes of global time tracking, for things that need a time outside of when an action is taken, I count one full round robin of the queue as a segment (I use a sentinel NULL value to track one full round robin). Ten segments is a turn (since a typical 100 speed creature performing typical actions will get 1 action per 10 segments).

Hrmm, I'm hesitant to frame it as "for each creature, check to see if its turn is up" since that seems to imply looping through every drat creature in the dungeon (which will sometimes be quite large) every tick instead of just checking to see if one instance in a dictionary exists. Is the efficiency gain I get out of doing things this way so small that it's ultimately pointless?

Unormal
Nov 16, 2004

Mod sass? This evening?! But the cakes aren't ready! THE CAKES!
Fun Shoe

OtspIII posted:

Hrmm, I'm hesitant to frame it as "for each creature, check to see if its turn is up" since that seems to imply looping through every drat creature in the dungeon (which will sometimes be quite large) every tick instead of just checking to see if one instance in a dictionary exists. Is the efficiency gain I get out of doing things this way so small that it's ultimately pointless?

I was shooting for a highly mutable system, sacrificing absolute efficiency for flexibility. You have different requirements, so I can't say either way, but I'd bet if you profiled it that looping through the action queue even in a very inefficient way would take a totally negligible amount of your overall processing power.

You're (probably) going to spend vastly more time on an A* for a single creature during a single turn than looping through the action queue a thousand times.

tl;dr optimize late, benchmark early

dizzywhip
Dec 23, 2005

Unormal posted:

tl;dr optimize late, benchmark early

This gets mentioned all the time, but not enough. It's not game related, but I recently spent about a week implementing part of a project in a very complex way to get a certain common operation to happen in constant time rather than linear time (just like OtspIII's situation -- looking up in a dictionary rather than iterating over a list). Later I discovered that the system was causing a lot of bugs, and I decided to try implementing it the "inefficient" way, which took about ten minutes to throw together, most of which was removing the old code.

When I profiled it I discovered that the inefficient algorithm was taking up about 0.001% of the total CPU time and had absolutely zero impact on performance :downs:

PDP-1
Oct 12, 2004

It's a beautiful day in the neighborhood.

Gordon Cole posted:

When I profiled it I discovered that the inefficient algorithm was taking up about 0.001% of the total CPU time and had absolutely zero impact on performance :downs:

Oh man, I can't count how many times I've done a similar thing. It seems like everyone has to go through that cycle a couple of times before the lesson sticks.

I find it helps a lot to write the percentage of the frame time used by the update/draw calls somewhere on the screen during development. When you know you're only using 4.30% of your available CPU and adding a simple-but-inefficient feature takes you to 4.35%, it may not be worth taking the time to re-write it. After a while you start to get some perspective on just how powerful modern PCs are and how much you can throw at them without running into performance issues.

field balm
Feb 5, 2012

Hi guys,

I've been building a 2d platformer using javascript and html5 over the last couple of months. I'd like to make a desktop version of this.

I don't know poo poo about making applications, is there a way I can code a stande-alone app using javascript (preferably using sdl or something like that)? Ideally I would just have to recode the rendering side and could use the same code base for web and desktop versions.

bgreman
Oct 8, 2005

ASK ME ABOUT STICKING WITH A YEARS-LONG LETS PLAY OF THE MOST COMPLICATED SPACE SIMULATION GAME INVENTED, PLAYING BOTH SIDES, AND SPENDING HOURS GOING ABOVE AND BEYOND TO ENSURE INTERNET STRANGERS ENJOY THEMSELVES

field balm posted:

Hi guys,

I've been building a 2d platformer using javascript and html5 over the last couple of months. I'd like to make a desktop version of this.

I don't know poo poo about making applications, is there a way I can code a stande-alone app using javascript (preferably using sdl or something like that)? Ideally I would just have to recode the rendering side and could use the same code base for web and desktop versions.

Forgive me if I'm missing something obvious about how js and html5 work, but couldn't you just save out the web page the game is hosted in, as well as its dependency .js files, and let the user run the thing from a local file on their computer, still using their browser?

Pfhreak
Jan 30, 2004

Frog Blast The Vent Core!

bgreman posted:

Forgive me if I'm missing something obvious about how js and html5 work, but couldn't you just save out the web page the game is hosted in, as well as its dependency .js files, and let the user run the thing from a local file on their computer, still using their browser?

Not always. JS files stored on a local computer cause troubles with the 'same origin policy' of most modern browsers.

field balm
Feb 5, 2012

bgreman posted:

Forgive me if I'm missing something obvious about how js and html5 work, but couldn't you just save out the web page the game is hosted in, as well as its dependency .js files, and let the user run the thing from a local file on their computer, still using their browser?

Yes, there is no reason I couldn't do this - it's what i'm doing currently and works fine. However I would like to move to a lighter/faster rendering method so it'll run better on older/smaller pcs - also nice would be not having browser chrome around it, and obscuring my code (player could go in and read all plot/dialogue if they really wanted). Thanks for the replies dudes!

The Glumslinger
Sep 24, 2008

Coach Nagy, you want me to throw to WHAT side of the field?


Hair Elf
I wanted to post (one of) the thing(s) I am working on, since I have asked more than a few questions in this thread about.



Please excuse the lovely screenshot, we still don't have final assets and are mostly just using things made for other projects.

I've been writing the physics system for a car racing game that is using a homemade C++, with Lua scripting, engine created by a teacher of mine. Writing a physics system from scratch (all the down to the collision tests) was quite an eye opening experience, and I have really learned a ton of useful stuff. I also would never organize it like this again if I were given the chance :v:

For a 5 week project, it should be pretty nice, especially since the cool feature of the engine is the ability to port to XBox 360/PS3. Hopefully, I can post an update after the semester ends when we have AI and particle effects in.

I also might post another thing I have been doing this semester which is way better looking and more polished, but its UDK so it is kind of cheating in comparison to doing it like this.

SupSuper
Apr 8, 2009

At the Heart of the city is an Alien horror, so vile and so powerful that not even death can claim it.
What do people usually do for "programmer art" in 3D games?

I mean, you're a programmer, 99% chance you are not good at le arts, but for 2D games you can usually scrap something up in MSPaint and call it retro, or find plenty of 2D resources online. So what's the 3D equivalent? Are there any good free resources online (I never found any), or do you just make do with making some cubes in a modelling package or directly in the program?

Synthbuttrange
May 6, 2007

See Minecraft, basically. Actually Frozen Synapse is pretty good for a minimal but effective presentation.

MarsMattel
May 25, 2001

God, I've heard about those cults Ted. People dressing up in black and saying Our Lord's going to come back and save us all.
Someone posted this in the thread previously, I think: http://answers.unity3d.com/questions/16650/game-asset-website-list-free-and-paid-textures-mod.html

Rupert Buttermilk
Apr 15, 2007

🚣RowboatMan: ❄️Freezing time🕰️ is an old P.I. 🥧trick...

Slightly related, but wasn't someone going to start up a pixel art how-to/showcase megathread in CC? I really wish they would.

EDIT:

Jewel posted:

Yeah I talked about this a while ago, I was hopin' someone like internet janitor would do it but nobody ended up doing it! I want a nice OP with a ton of tutorials and stuff. I want just like a "daily drawings and doodles" thread but for sprites and sprite tutorials.

Yeah, ok, wow, I REALLY want this now.

EDIT 2: Actually, to do my part, I think I'm going to take my 'Audio Engine Megathread' and move change it a bit to cover the realm of game audio, both with sound design and music. So, anyone who's interested, pop on over (editing the OP now) Updated.

Rupert Buttermilk fucked around with this message at 13:49 on Apr 17, 2012

Jewel
May 2, 2009

Rupert Buttermilk posted:

Slightly related, but wasn't someone going to start up a pixel art how-to/showcase megathread in CC? I really wish they would.

Yeah I talked about this a while ago, I was hopin' someone like internet janitor would do it but nobody ended up doing it! I want a nice OP with a ton of tutorials and stuff. I want just like a "daily drawings and doodles" thread but for sprites and sprite tutorials.

Harvey Mantaco
Mar 6, 2007

Someone please help me find my keys =(

SupSuper posted:

What do people usually do for "programmer art" in 3D games?

I mean, you're a programmer, 99% chance you are not good at le arts, but for 2D games you can usually scrap something up in MSPaint and call it retro, or find plenty of 2D resources online. So what's the 3D equivalent? Are there any good free resources online (I never found any), or do you just make do with making some cubes in a modelling package or directly in the program?

I learned Maya a while ago. I spend my hard earned money buying really well done "template" models so I don't need to start from scratch (I picked up http://www.deespona.com/3denciclopedia/categoria_aircraft.html for stupid cheap years ago on sale, the best deal ever)

From there you can modify and tweak and what not. Learn a bit of rigging, lighting and what not, which isn't to bad and render your frames. As long as you're willing to say "I'm not going to do everything from scratch and I will spend a budget of $XXX it actually isn't that bad. This is pretty much for any project. I don't have time to reinvent the wheel. I'm not making art, I'm making a component for a game and I'm not going to spend half a week making the perfect human ear when someone is selling one on turbosquid for fifty cents that's better than I could ever do.

Uncle Kitchener
Nov 18, 2009

BALLSBALLSBALLSBALLS
BALLSBALLSBALLSBALLS
BALLSBALLSBALLSBALLS
BALLSBALLSBALLSBALLS

Pfhreak posted:

I've been working on figuring out how Marathon stores its map data so I can render in a web browser. It's been a deep dive through some very clusterfucked code, but I finally got the points, lines, and polygon data out of the file and into a canvas element.



It's a fun reverse engineering project so far. Next up comes learning enough WebGL to render it in 3D.

Kind of reminds me of my first major OGL 3D project where I attempted to recreate Doom's E1M1 (which was a disaster). Instead of doing the entire level in Maya (creating the level from scratch, applying textures, etc.), I should have just created a data driven map maker and passed all the vertex, texture, material and lighting data and whatever else through scripts. Or maybe I could just find it online for free on TurboSquid or Free3DModels.com or something.

Guts don't necessarily lead to glory in some cases and it's best to just slave someone into making your assets for you or just nick it from some 3D site.

The Glumslinger
Sep 24, 2008

Coach Nagy, you want me to throw to WHAT side of the field?


Hair Elf

SupSuper posted:

What do people usually do for "programmer art" in 3D games?

I mean, you're a programmer, 99% chance you are not good at le arts, but for 2D games you can usually scrap something up in MSPaint and call it retro, or find plenty of 2D resources online. So what's the 3D equivalent? Are there any good free resources online (I never found any), or do you just make do with making some cubes in a modelling package or directly in the program?

At my school, there is a required class for games majors which is a Maya modeling class. All of the things that the students make in that class are uploaded to a database for other students to use. Most everything is lovely as you would expect, but it is much better than just using boxes for everything.

Internet Janitor
May 17, 2008

"That isn't the appropriate trash receptacle."
Just spitballing here, I'd be interested to know if any of you folks think this sounds like an interesting idea for a game.

I like the idea of building games that are "educational" and encourage further exploration. When Spore came out I was very disappointed with the fact that the development of your critters has nothing to do with biology or evolution- they're basically Mr. Potato Heads which can have their limbs and eyeballs shuffled around whenever you please. The game certainly allows for creativity, but has no basis in reality. On the opposite end of the spectrum there have been a number of games that involve evolving populations of microorganisms or something but they tend to be very abstract and/or "hands-off" in the sense that you just sort of let things run and tweak the environment a bit and eventually breed a superbug.

The experiments with D. Melanogaster that lead to the discovery and mapping of Hox genes could be an interesting setting. These are the gene sequences in animals that control how the body forms, and small mutations tend to have significant, directly observable impacts- flies with a second thorax, legs growing where eyes should be, etc. Players would take on the role of researchers trying to win grants by isolating the genes responsible for various defects or occasionally beneficial mutations, and players can compete to accomplish other tasks like producing the heaviest adult fly, a fly with the largest number of limbs or a fly that can track down chemically tagged objects the fastest. To create the flies you use mostly realistic methods- selective breeding, irradiating eggs to encourage mutation and limited recombinant gene splicing- and gather data by running experiments, doing gel electrophoresis and writing programs to pore over the resulting data (Like some sort of lua-based simplified Matlab system). Forcing players to contend with the cost of sophisticated equipment and expensive lab techniques could heavily reward good planning and application of scientific thinking.

The idea is to present a realistic view of biological research and "genetic engineering" at the same time as creating a challenging, open-ended sandbox game. Obviously there's a lot of potential for multiplayer both competitively and cooperatively.

Thoughts?

Unormal
Nov 16, 2004

Mod sass? This evening?! But the cakes aren't ready! THE CAKES!
Fun Shoe

Internet Janitor posted:

Just spitballing here, I'd be interested to know if any of you folks think this sounds like an interesting idea for a game.

I like the idea of building games that are "educational" and encourage further exploration. When Spore came out I was very disappointed with the fact that the development of your critters has nothing to do with biology or evolution- they're basically Mr. Potato Heads which can have their limbs and eyeballs shuffled around whenever you please. The game certainly allows for creativity, but has no basis in reality. On the opposite end of the spectrum there have been a number of games that involve evolving populations of microorganisms or something but they tend to be very abstract and/or "hands-off" in the sense that you just sort of let things run and tweak the environment a bit and eventually breed a superbug.

The experiments with D. Melanogaster that lead to the discovery and mapping of Hox genes could be an interesting setting. These are the gene sequences in animals that control how the body forms, and small mutations tend to have significant, directly observable impacts- flies with a second thorax, legs growing where eyes should be, etc. Players would take on the role of researchers trying to win grants by isolating the genes responsible for various defects or occasionally beneficial mutations, and players can compete to accomplish other tasks like producing the heaviest adult fly, a fly with the largest number of limbs or a fly that can track down chemically tagged objects the fastest. To create the flies you use mostly realistic methods- selective breeding, irradiating eggs to encourage mutation and limited recombinant gene splicing- and gather data by running experiments, doing gel electrophoresis and writing programs to pore over the resulting data (Like some sort of lua-based simplified Matlab system). Forcing players to contend with the cost of sophisticated equipment and expensive lab techniques could heavily reward good planning and application of scientific thinking.

The idea is to present a realistic view of biological research and "genetic engineering" at the same time as creating a challenging, open-ended sandbox game. Obviously there's a lot of potential for multiplayer both competitively and cooperatively.

Thoughts?

I honestly think there's a totally enormous market for hands-on education games like the old school http://en.wikipedia.org/wiki/Rocky%27s_Boots, especially on the tablet form factor. I think it's just a matter of time (and a few exploratory and successful titles) before the market for them explodes.

The biggest problems I've seen with the ones out there are very low production value, and generally buggy/fiddly UI. Generally it's younger kids that really can't tolerate working around fiddly UI, you really need a nice, clean, forgiving, responsive UI, and I think you could be really successful. One thing that people often get wrong in kids games is to allow real UI failure states, for instance giving you only so many lives, or forcing you to do something trick to proceed, without the ability to skip on. The best will assist you in moving on, even automatically bypassing something if you get stuck.

Unormal fucked around with this message at 00:50 on Apr 18, 2012

redorb
Feb 17, 2012

Jewel posted:

Yeah I talked about this a while ago, I was hopin' someone like internet janitor would do it but nobody ended up doing it! I want a nice OP with a ton of tutorials and stuff. I want just like a "daily drawings and doodles" thread but for sprites and sprite tutorials.

Don't know if you've seen this site but it had some pretty nice resources in regards to sprite art as well as some other things:
http://www.pixelprospector.com/indie-resources/
If you're looking for something else I'm sure I have a bookmark most likely.

Jewel
May 2, 2009

redorb posted:

Don't know if you've seen this site but it had some pretty nice resources in regards to sprite art as well as some other things:
http://www.pixelprospector.com/indie-resources/
If you're looking for something else I'm sure I have a bookmark most likely.

Well it wasn't particularly for me, I just thought it'd be nice to have tutorials in a thread full of inspiration to get a few new people spriting!

mustermark
Apr 26, 2009

"Mind" is a tool invented by the universe to see itself; but it can never see all of itself, for much the same reason that you can't see your own back (without mirrors).
I'm not sure if this has been answered before in this thread, but out of curiosity: how are deformable or animated models usually dealt with at a low level in games? For instance, if I wanted to have a deformable terrain, do I have to rebuild VBOs or whatever every time they change? I'm not even sure where I'd start. What are some good pointers for understanding the data side of graphics as opposed to the shadery side?

bomblol
Jul 17, 2009

my first crapatar
I am starting to feel reasonably proficient in Python, and development in general (for a beginner.) I'd like to use Unity, especially considering Boo is a python-influenced language, but my google forays also seemed to say that it was pretty undocumented. Is it worth it to try to learn Boo, because diving into an entirely new language at this point just as I'm feeling comfortable in Python seems scary, or are UnityScript / C# better options?

Unormal
Nov 16, 2004

Mod sass? This evening?! But the cakes aren't ready! THE CAKES!
Fun Shoe

PoisonedV posted:

I am starting to feel reasonably proficient in Python, and development in general (for a beginner.) I'd like to use Unity, especially considering Boo is a python-influenced language, but my google forays also seemed to say that it was pretty undocumented. Is it worth it to try to learn Boo, because diving into an entirely new language at this point just as I'm feeling comfortable in Python seems scary, or are UnityScript / C# better options?

Learn and use C#; much better than the other language options, imo; but I'm a microsoft stack whore. :a2m:

AntiPseudonym
Apr 1, 2007
I EAT BABIES

:dukedog:

Jewel posted:

Well it wasn't particularly for me, I just thought it'd be nice to have tutorials in a thread full of inspiration to get a few new people spriting!

Well if no-one else starts one, I'll put one together when I get home. I'm just getting back into spriting, so it'd be good to have some like minds around for motivation and critique!

Internet Janitor
May 17, 2008

"That isn't the appropriate trash receptacle."
AntiPseudonym: I would certainly participate in such a thread if you started it. I didn't really think I would be a good person to put together an OP as I don't know about many tools or tutorials- what little I know comes from practice and studying old games.

Internet Janitor fucked around with this message at 05:52 on Apr 19, 2012

AntiPseudonym
Apr 1, 2007
I EAT BABIES

:dukedog:

Internet Janitor posted:

AntiPseudonym: I would certainly participate in such a thread if you started it. I didn't really think I would be a good person to put together an OP as I don't know about many tools or tutorials- what little I know comes from practice and studying old games.

Well honestly I've never started a megathread before, so it'll be a learning experience. I do know where to get a tonne of really good tuts, though.

duck monster
Dec 15, 2004

Internet Janitor posted:

Just spitballing here, I'd be interested to know if any of you folks think this sounds like an interesting idea for a game.

I like the idea of building games that are "educational" and encourage further exploration. When Spore came out I was very disappointed with the fact that the development of your critters has nothing to do with biology or evolution- they're basically Mr. Potato Heads which can have their limbs and eyeballs shuffled around whenever you please. The game certainly allows for creativity, but has no basis in reality. On the opposite end of the spectrum there have been a number of games that involve evolving populations of microorganisms or something but they tend to be very abstract and/or "hands-off" in the sense that you just sort of let things run and tweak the environment a bit and eventually breed a superbug.

The experiments with D. Melanogaster that lead to the discovery and mapping of Hox genes could be an interesting setting. These are the gene sequences in animals that control how the body forms, and small mutations tend to have significant, directly observable impacts- flies with a second thorax, legs growing where eyes should be, etc. Players would take on the role of researchers trying to win grants by isolating the genes responsible for various defects or occasionally beneficial mutations, and players can compete to accomplish other tasks like producing the heaviest adult fly, a fly with the largest number of limbs or a fly that can track down chemically tagged objects the fastest. To create the flies you use mostly realistic methods- selective breeding, irradiating eggs to encourage mutation and limited recombinant gene splicing- and gather data by running experiments, doing gel electrophoresis and writing programs to pore over the resulting data (Like some sort of lua-based simplified Matlab system). Forcing players to contend with the cost of sophisticated equipment and expensive lab techniques could heavily reward good planning and application of scientific thinking.

The idea is to present a realistic view of biological research and "genetic engineering" at the same time as creating a challenging, open-ended sandbox game. Obviously there's a lot of potential for multiplayer both competitively and cooperatively.

Thoughts?

I always thought Creatures had a much more solid basis in actual science, despite its obvious fantasy setting. Yeah Spore disapointed the hell out of me, although its more because it was divided into subgames whereas if they had got all those subsystems into a single seamless universe it would have been a loving amazing little sandbox.

But yeah , actually making the "science" plausible whilst actually putting some economy into the "science" of the sandbox sounds like a pretty neat mechanic and potentially a very educational experience.

duck monster
Dec 15, 2004

PoisonedV posted:

I am starting to feel reasonably proficient in Python, and development in general (for a beginner.) I'd like to use Unity, especially considering Boo is a python-influenced language, but my google forays also seemed to say that it was pretty undocumented. Is it worth it to try to learn Boo, because diving into an entirely new language at this point just as I'm feeling comfortable in Python seems scary, or are UnityScript / C# better options?

Boo is potentially a really neat language, but its undocumented nature makes it an exercise in fruturation. Your probably better off taking the plunge and working out C#. Its honestly not a bad language, despite its icky algol-family (c/c++/pascal/java) derived syntax.

Adbot
ADBOT LOVES YOU

Azazel
Jun 6, 2001
I bitch slap for a living - you want some?

duck monster posted:

Boo is potentially a really neat language, but its undocumented nature makes it an exercise in fruturation. Your probably better off taking the plunge and working out C#. Its honestly not a bad language, despite its icky algol-family (c/c++/pascal/java) derived syntax.

I'm going to back this up as well. I went the UnityScript route at first, and while it's reasonably powerful, I kept expecting it work like ECMA Javascript and was getting frustrated with it's behavior. I finally retooled everything in C# shortly after getting started and haven't looked back. I wish there was a nice Ruby derivative though, sigh.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply