Show Posts
|
|
Pages: 1 ... 6 7 [8] 9 10 ... 18
|
|
141
|
Developer / Technical / Re: The happy programmer room
|
on: August 19, 2010, 10:37:27 AM
|
(unless they're viewing it on a 60Hz monitor  ) Oh, and happy programmer room: I'm happy because I've tidied up the lighting effects code that I keep finding myself rewriting and wrapped it up into My First Library. It's almost properly reusable!
|
|
|
|
|
142
|
Player / General / Re: Bioshock Infinite
|
on: August 15, 2010, 09:18:42 AM
|
Yeah, he's being very evasive about it: RPS: My initial question upon seeing the demo is… well, is this actually the same universe as Bioshock?
Ken Levine: I’m not going to answer that question. But will say… you’ve just seen the demo once. There’s stuff going on which isn’t immediately apparent. That’s all I’ll say. InterviewThey try to ask again if it's a Final Fantasy kind of thing, but he just talks about something else instead. If it is the same universe then Rapture's science makes less sense. If there was already the ability to summon a murder of crows by drinking a potion, discovering plasmids that let you summon a swarm of bees would have been much less exciting. Plus, building a city under the sea is much less "do the impossible" when there was one floating around the sky 60 years before.
|
|
|
|
|
143
|
Developer / Design / Re: What would make a digging game fun?
|
on: August 14, 2010, 05:50:19 AM
|
|
Sim Ant was excellent.
Game as a whole was your black ant colony versus a red colony fighting to take over a suburban garden and house. The area was divided into a grid, you'd select a square to zoom in on and direct the action.
You control a single ant at a time, but can indirectly control others using pheromones. Most the game happens from a top-down view of your ant, but when you dig the tunnels of your nest it switches to a side view. Explore around to find food sources and leave a trail for the rest of the workers to follow (and when they bring back the food they enhance the pheromone trail themselves.) Call up a gaggle of friendly ants to take down wandering caterpillars for food, fight off spiders, or go to war with the red ants if they're in the area too. Build up a nest in one area enough, and you can release flying ants to settle new areas and gradually expand your empire.
The amazing thing was it was actually pretty realistic. The help menu was as filled with diagrams and facts about ant anatomy as with instructions on how to play. Maxxis' sim games were wonderful for their blend of realistic simulation (especially considering what they were running on,) education and actually being fun games to play.
Yay, a
Forgot how terrifying the spider was.
|
|
|
|
|
144
|
Player / General / Re: Bioshock Infinite
|
on: August 12, 2010, 11:31:53 AM
|
I'd take a wild guess and say Bioshock 2 was made for the  , whilst freeing up Irrational to work on this new stuff that they're more creatively interested in. Kotaku has a pretty lengthy article if you want more detail about the game. Rock Paper Shotgun have a better article. Interesting that it's not even set in the same fictional world as Bioshock (let alone the same time.) I guess naming it Bioshock is the best way to clearly tell the world that it's made by the Bioshock team without needing to do a Langdell on the -shock suffix. I hope it's named Infinite as a reference to the Marathon series.
|
|
|
|
|
145
|
Player / General / Re: Where's your chairs?
|
on: August 12, 2010, 09:46:00 AM
|
I've a cheap generic office chair, but it does have a "mesh" back instead of the usual solid foam thing. I've found normal office chair backs wear through after a while and I end up with some metal edge from deep inside stabbing into me. Whatever chair I have after half an hour I end up sitting like the cute guy from that anime I can't remember the name of, so ergonomic design is wasted on me: 
|
|
|
|
|
146
|
Developer / Playtesting / Re: Tangled Mess (Tentative Name)
|
on: August 12, 2010, 09:23:44 AM
|
It really is a fun little task to complete. The addition of new constraints keeps the levels interesting. My solution almost never looked anything like the finished image. But I do like that the graph forms a picture rather than it being an arbitrary abstract design. I also found myself trying to guess what the image would be from the scrolling text, and looking forward to seeing it. Really like how the nodes bounce off one-another: Both practically useful to stop them from overlapping and being hard to click, but also gives a nice 'real' feel to the interaction. Tiny bug: On the second and third 'pastimes' themed levels (the ones you get to by pressing 2) the board is split into two but I can move the nodes freely between the sides. Pishtaco's comment might have biased me, but it does feel like this would make a good relaxing puzzle game. I think it has the right mix of the task requiring some thought, whilst it also being possible to just guess and progress that way. The whole revealing a picture thing should go down well with the casual-set too. Plus, a casual game that ends with the message " You will die in this office" would be golden. It doesn't feel at all derivative to me, but maybe I've just not played what it's derived from 
|
|
|
|
|
147
|
Developer / Technical / Re: Problem with my code to control a spaceship
|
on: August 11, 2010, 03:30:57 AM
|
I don't follow everything that's going on in your code, but I think you can get your rotationDelta value to be neater. If your demandedRotation is 359 degrees (I know, it's in radians really) and currentRotation is 2 degrees then rotationDelta will come out at 357. But of course you want the ship to turn -3 degrees rather than an almost full circle. function shortestDifferenceBetweenRadianAngles(start:Number, end:Number):Number { var diff:Number = end - start; while (diff > onePi) { diff -= twoPi; } while (diff < -onePi) { diff += twoPi; } return diff; }
While loops are used instead of just If statements in case it's given crazy angles that need multiple corrections to get into the right range. If you're regularly getting such angles, it'd probably be better to do that in a smart arithmetic way rather than looping.
|
|
|
|
|
149
|
Developer / Technical / Re: 2d Shadows trouble
|
on: August 10, 2010, 03:04:12 PM
|
Not at all!  Very good idea to concentrate on getting your game working rather than spending forever trying to get fancy effects working. This has also given me ideas for improving the original tutorial, which is always good. Best of luck with the game!
|
|
|
|
|
150
|
Developer / Technical / Re: 2d Shadows trouble
|
on: August 10, 2010, 04:00:08 AM
|
-Draw all the other shapesI'm afraid I don't know what part you're referring to in particular. I probably mean something like "repeat the same procedure for any other shape that you want to be casting shadows". -Four corners and sidesJudging from your screenshot, you want shadows to be cast from square tiles. You will need information on the edges of all the tiles. How you generate and store that is up to you! Your basic two options are to do it on a per-tile basis every frame; or to generate a big list of edges when the map is first loaded and use that to draw shadows from. Either way, it'd be a good idea to make a custom class to represent an edge. All it needs to do is store the start and end points of the edge. You don't need to separately store the position of the corners of your tiles, as that information is a part of the edge. package { import flash.geom.Point; public class Edge { public var start:Point; public var end:Point; public function Edge(startPoint_:Point, endPoint_:Point) { //just store the given points start = startPoint_; end = endPoint_; } } } To find the edges of a single tile, you can use something like: private function edgesOfTile(tileTopLeft:Point, tileSize:Number):Array { //find the corners of this tile var tileTopRight:Point = tileTopLeft.add(new Point(tileSize, 0)); var tileBottomLeft:Point = tileTopLeft.add(new Point(0, tileSize)); var tileBottomRight:Point = tileTopLeft.add(new Point(tileSize, tileSize)); //create edges linking those corners in a clockwise direction var topEdge:Edge = new Edge(tileTopLeft, tileTopRight); var rightEdge:Edge = new Edge(tileTopRight, tileBottomRight); var bottomEdge:Edge = new Edge(tileBottomRight, tileBottomLeft); var leftEdge:Edge = new Edge(tileBottomLeft, tileTopLeft); var edgesInArray:Array = [topEdge, rightEdge, bottomEdge, leftEdge]; return edgesInArray; } Use that together with the earlier example code for drawing the shadow for a single edge to draw the shadow of a square tile by drawing the shadows for all four of its edges. Once you have that working, you can move on to having it read your map data and draw shadows for all the tiles in your map. There will also be plenty of improvements you can make to the speed, as it will be drawing the shadows for a lot more edges than is actually required. -Shadows covering the whole screenMain reason I don't have unlimited length shadows is I've still not found a 'neat' way of making them just the right length. One wants the shadow to at least reach the edge of the screen, but not go miles further than the edge, as Flash will waste time drawing all of that shadow which is off screen and never seen. In retrospect I've probably overestimated how much of an issue having Flash draw a slightly larger shape than needed actually is. You can edit the projectPoint function so that the point is projected a fixed distance instead of a distance proportional to the distance of the light source from the point. Set that distanceToProject large enough, and the shadows will reach the edge of the screen. To be totally sure the shadow will always reach the edge of the screen, the distance should be √(screenWidth² + screenHeight²) ..unless you have stuff off-screen that's casting shadows over the screen area, in which case it'll need to be something larger. private const distanceToProject:Number = 500; private function projectPoint(pointToProjectFrom:Point, lightPosition:Point):Point { var fromLightToPoint:Point = pointToProjectFrom.subtract(lightPosition); //normalize sets the length of the vector to whatever you like var toAddToPoint:Point = fromLightToPoint; toAddToPoint.normalize(distanceToProject);
var projectedPoint:Point = pointToProjectFrom.add(toAddToPoint); return projectedPoint; }
|
|
|
|
|
151
|
Developer / Technical / Re: 2d Shadows trouble
|
on: August 09, 2010, 04:42:10 AM
|
Hi! (I wrote that tutorial) Those code examples use Box2D's vector class (named b2Vec2) just because it's a nice working vector, and because the example goes on to piggy-back on Box2D's shape classes. The aim of that tutorial was to teach the theory needed for that kind of 2D shadow effect, rather than give a full code example. For instance I completely skipped over the code for iterating through the sides of a Box2D shape, because that would really be teaching how to use Box2D which is quite a different subject (and one with plenty of tutorials already.) Instead my hope was to teach techniques that could be applied to whatever system you're using. That function you quoted can be converted to use the built-in class Point instead of Box2D's vector. It's a bit easier to read, too: private function projectPoint(pointToProjectFrom:Point, lightPosition:Point):Point { var fromLightToPoint:Point = pointToProjectFrom.subtract(lightPosition); var projectedPoint:Point = pointToProjectFrom.add(fromLightToPoint); return projectedPoint; } You'd use that in a function like the following, to produce the shadow from a single edge - as in the diagram:  private function drawShadowFromEdge(edgeStart:Point, edgeEnd:Point, lightPosition:Point):Shape { var projectedStart:Point = projectPoint(edgeStart, lightPosition); var projectedEnd:Point = projectPoint(edgeEnd, lightPosition); var shadow:Shape = new Shape(); shadow.graphics.beginFill(0); shadow.graphics.moveTo(edgeStart.x, edgeStart.y); shadow.graphics.lineTo(projectedStart.x, projectedStart.y); shadow.graphics.lineTo(projectedEnd.x, projectedEnd.y); shadow.graphics.lineTo(edgeEnd.x, edgeEnd.y); shadow.graphics.endFill(); return shadow; } drawShadowFromEdge returns a Shape object, so you'd use it like: var myLineStart:Point = new Point(50,50); var myLineEnd:Point = new Point(55, 80); var myLight:Point = new Point(5, 65);
var myShadow:Shape = drawShadowFromEdge(myLineStart, myLineEnd, myLight); addChild(myShadow);
I get the feeling all of that is easier to read than the code in the tutorial. Hopefully a sign of my improving! I hope that helps it make more sense, and that things can start working for you. I'll do my best to give more support if you need it.
|
|
|
|
|
153
|
Player / General / Re: Solving the Unoriginality Problem
|
on: July 20, 2010, 12:39:46 PM
|
|
Plenty of older games are already made available through download services. Steam has a decent catalogue of classics: My first time playing Deus Ex and X-COM was thanks to Steam. I think that Nintendo are bringing (or have?) various of their classic games to WiiWare. But there is a cost to re-releasing older games - getting the original SPACEWAR! to run on Vista reliably enough to be sold isn't simple, and you're unlikely to sell many copies if you charge more than a dollar.
I think more than "a few" indie developers are being original, and what are you calling the indie games market? I guess you're just looking to troll up more responses by saying that.
Anyway, best way to increase the number of original games is to make an original game. Get to it!
|
|
|
|
|
154
|
Player / General / Re: Women in computing: first, get the problem right
|
on: July 16, 2010, 09:58:48 AM
|
|
I think the mention of differences in dispersion of IQ is a reference to the "generally accepted" finding that girls on average have higher grades than boys, but that boys show a greater spread in ability. Such that both the very best and the very worst students are more likely to be boys than girls. You then assume that the STEM fields recruit only the very best students, and so account for the male bias. This argument is especially popular from those in the STEM fields as it lets them remind people how very good they were at maths in school.
As Oddball said, the number of women working in nursing neatly shuts down the author's arguments. Long hours, high stress (dealing with death of your patients versus meeting development milestones), often dealing with asshole coworkers (doctors), and for bonus points nurses are almost universally paid less. Women being quicker to realise that working so hard to just make a generic FPS still stands.
The article is silly. It's a plea for better working conditions in the author's field of work, disguised as a call for improved gender equality. Because of course he can handle the stresses of the work but a poor defenceless woman never could, and needs him to stand up for her.
|
|
|
|
|
155
|
Player / General / Re: 0.999...
|
on: July 05, 2010, 06:37:46 AM
|
|
The internet didn't exist back then, so they had to make films about it.
|
|
|
|
|
157
|
Developer / Playtesting / Re: Niilu - an isometric exploration game
|
on: June 29, 2010, 06:19:30 AM
|
I found myself really liking how the photos are mixed in. Being unfamiliar with the place, it's an interesting feeling to find that what looks like a made up game-world space is actually real. As has been mentioned already, the character graphics are a little off-balance and just generally don't feel as well made as the rest of the graphics. Their anatomy generally seems slightly off, and the walking animation is very stiff. Nice to see that every character has a unique graphic. I am especially fond of the lighting effects in the areas that have them. The fading beams of sunlight are beautiful. Walking into a foreign languages classroom and finding the room bathed in gentle orange light because of the half-closed curtains was lovely. A minor technical problem: playing in windowed mode, the game continues to react to keyboard input even when I have another window selected. Pressing my cursor keys whilst typing this message is making the character wander around  The girls' bathroom being filled with visible clouds of perfume made me laugh, very nice!
|
|
|
|
|
158
|
Developer / Technical / Re: Changing variables among classes in AS3
|
on: June 25, 2010, 09:44:25 AM
|
Whilst you were typing a new reply has been posted.. I am totally repeating what agj just said, sorry! public class Card extends MovieClip { public function Card (cardType , cardName, iceCost , airCost , fireCost , lightCost , darkCost , miscCost , range , cardID) { var ID:int = cardID; } } Your current code declares a variable called ID within the constructor function, which can then only be accessed from within that same function. public class Card extends MovieClip { public var ID:int; public function Card (cardType , cardName, iceCost , airCost , fireCost , lightCost , darkCost , miscCost , range , cardID) { ID = cardID; } } Move the declaration of ID to outside of any function (but within the Card class definition), set it as Public and now that variable can be accessed by stuff outside of the Card class.
|
|
|
|
|
159
|
Developer / Technical / Re: flash games on mac
|
on: June 24, 2010, 02:06:26 PM
|
Curiosity got the best of me.I don't have a Mac to try things on. Only thing I immediately notice is that anything involving the Alt key doesn't work, as it passes focus to the menu bar of either the browser or the standalone player. But I don't think Ctrl has that kind of function on Macs?
|
|
|
|
|