Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411124 Posts in 69302 Topics- by 58375 Members - Latest Member: Essential34Games

March 13, 2024, 09:52:16 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
  Show Posts
Pages: [1] 2 3
1  Community / Jams & Events / STL ScatterJam 2017 on: September 09, 2017, 02:58:39 PM

Hey everybody! I just wanted to pop in here and drop some knowledge about the upcoming STL ScatterJam! October 13-15 2017

Not in/near St Louis? No worries! You can join us anyway!

Find out more at http://www.stlscatterjam.com/

2  Community / DevLogs / Re: Dinosaur-Ghost Rampage (Tentative Title) on: February 04, 2016, 08:45:38 AM
Hey everyone. It's been a little while. I've been busy with work and the Global Game Jam (http://mission-imp.tims-world.com) and everything.

I don't have a huge update, but I wanted to show off the map logic that I came up with.

Basically, I knew that I wanted my maps to work something like the Mario 3 maps. A series of nodes that you can navigate between (once they've opened up).

First, I defined my levels themselves, using JSON.
Code:
{"levels":[
  {"id":0, "type":1, "style":0, "size":16, "density":1, "level":1, "connections":1, "enemies":[0], "spawnRate":10, "destructGoal":500 },
  {"id":1, "type":1, "style":0, "size":16, "density":1, "level":1, "connections":1, "enemies":[0], "spawnRate":10, "destructGoal":600 },
  {"id":2, "type":1, "style":0, "size":18, "density":1, "level":1, "connections":1, "enemies":[0], "spawnRate":9, "destructGoal":700 },
  {"id":3, "type":1, "style":0, "size":18, "density":1, "level":1, "connections":2, "enemies":[0], "spawnRate":8, "destructGoal":800 },
  {"id":4, "type":1, "style":0, "size":20, "density":1, "level":2, "connections":2, "enemies":[0], "spawnRate":7, "destructGoal":900 }
]}

This is the first 5 levels in the game, with all of the details that need to be passed to the map creator.
id = the level's id number
type = the kind of map it is - the only type I have right now is '1' which is 'destruction' where the goal is to fill up your destruction meter to 'win' that level.
style = is not used yet, but is planned to set the tiles used for this map, so we can have a variety of different looking cities.
size = how big the city is
density = how close the roads are packed together in the city
level = defines the height of the buildings - higher level means more taller buildings
connections = how many roads reach the edges of the city - which is also the spawn points for enemies
enemies = defines which enemies will spawn in this level (I only have tanks ["0"] right now)
spawnRate = how fast enemies spawn in seconds
destructGoal = how much the player has to destroy to beat the level

This file is read in when the game starts, and the level definitions get stuck in an array, so that if I want `level[0]` it gives me the properties of the first level, etc.

Next, I started setting up my map screen. This was much trickier than I expected. I knew that I wanted to have different 'worlds', each with their own levels, and I wanted to be able to allow for branching paths, and 'roads' that turned.
What I came up with was to define all the nodes on a map in another JSON file, including any 'pass-through' nodes.
Code:
{"nodes":[
  {"world":0,"id":0,"level":0,"neighbors":[-1,-1,-1,1], "x":0, "y":0},
  {"world":0,"id":1,"level":1,"neighbors":[-1,-1,0,2], "x":1, "y":0},
  {"world":0,"id":2,"level":-1,"neighbors":[1,-1,-1,3], "x":2, "y":0},
  {"world":0,"id":3,"level":2,"neighbors":[2,4,-1,7], "x":2, "y":1},
  {"world":0,"id":4,"level":-1,"neighbors":[3,5,-1,-1], "x":2, "y":2},
  {"world":0,"id":5,"level":-1,"neighbors":[4,6,-1,-1], "x":3, "y":2},
  {"world":0,"id":6,"level":3,"neighbors":[5,-1,-1,-1], "x":3, "y":3},
  {"world":0,"id":7,"level":4,"neighbors":[-1,-1,3,-1], "x":6, "y":1}
]}

This is what I have right now for the first map in the game, which uses those first 5 levels.

world = which world map this node is on
id = the id of this node
level = which level this node points to - the '-1's are 'pass-through' nodes.
neighbors = this is an array of the node-ids that this node directly connects to. I'll explain this more in a minute.
x and y = the position of this node on the map

I load these nodes in and build my map by using the x,y values.
It ends up looking something like this:

(I added the Blue lines and numbers for reference)

So, working out the 'neighbors' was really tricky. The array for 'neighbors' goes: UP, DOWN, LEFT, RIGHT. So, if you look at that first record: '[-1, -1, -1, 1]' it says that the first node #0 (which is at '0,0') has no neighbors UP, DOWN, or LEFT, but RIGHT points to node #1.

If the player is on node #0, and they hit RIGHT, they will move to the right, and end up at node #1.
node #1 says that it has a neighbor to the LEFT (#0, which we know about already), and a neighbor to the RIGHT (#2).
node #2 however is a pass-through node. It says that it has a neighbor UP (#1) and to the RIGHT (#3) So, when the player is on #1 and they hit RIGHT, it see that they should move to node #2, which it to the right, but, once they get there, the pass-through node looks at where they came FROM (they came from the RIGHT), and immediately sends them to that neighbor, which is #3. Node #3, though, is DOWN from node #2.

From node #3, if they hit UP, it goes to node #2, and, since node #2 sees that it's UP neighbor = 1, it sends them to the LEFT, over to node #1.

This works pretty great! In addition to the stuff in the JSON file, I have a few properties of the level such as if it's unlocked or beaten or not, which, depending on the flag, will prevent the player from moving along a path. Also, if the player is on a level node, they can hit FIRE to start that level, and it properly launches the PlayState - loading the map and everything.

So, the game is coming along! I'm going to try to work on the different enemies, level conditions, game over/level clear screens, and upgrade menus next.

I wonder if I should start looking for an artist yet...
3  Community / DevLogs / Dinosaur-Ghost Rampage (Tentative Title) on: January 22, 2016, 07:55:51 AM
Hey! I just found these Dev Logs! Neat idea... I'll try to post here regularly.

So, I just wrapped up my last game (http://blastingagent.com) and released it earlier in the month, and I've already started on the next one.
Awhile ago, I tried challenging myself with making a full game a month. One of the games that came out of it was Dinosaur-Ghost Rampage (http://dinoghost.tims-world.com/). It had a simple design: run around and destroy stuff for as long as you can.


The Original

Whenever I go to events and show off my games to people, this one has always been the 'favorite' for some reason. People will sit down and play for way longer than I expect them to, and seem to have a blast. So, it was only natural that I would want to turn this into a bigger, fuller, better game.

First things First, I'm using HaxeFlixel (http://haxeflixel.com), which is the BEST. I am also not an artist, so, a lot of things are going to be programmer/placeholder art until later on.

Thinking about this project, I wanted to try something new that I hadn't done before. So, I decided to try doing an Isometric style, instead of the top-down style of the original. This turned out to be a bigger headache than I thought.

HaxeFlixel doesn't have any built-in isometric stuff, yet. Someone had started working on something, but they never got very far, so, I was left to figure out my own logic. It took about 3 days to get it figured out. Basically, I ended up having 2 versions of everything - I have a regular, 2D Tilemap, and a bunch of regular, square, 2D objects that handle movement and collisions, and then I link a special IsoObject to each of those 2D objects which get placed on the screen based on their 2D counterparts. This way, I don't have to do any complicated Isometric movement logic or collision, I just let everything play out in 2D space as per usual, and then adjust their projections into Iso-space accordingly. It also allows me to stick all 2D stuff into it's own camera and turn it into a minimap!


2D Mapping

Once I had this figured out, it was pretty easy to get the player's movements working, and a simple enemy-tank which pathfinds around the map looking for the player.


The eternal struggle: Dinosaur-ghost vs Tank

The next fun bit I decided to mess around with is more of a style-thing. If you notice in the original game, there's something missing: no cars and no people running around in panic. I decided to fix that.

I drew up a super-simple dude and put him in the game. Whenever a building is destroyed, some random number of dudes pop out and run around until you step on them or they get run over by a tank. Hey - life is hard for pixel-folk. Now, I didn't want to just have one dude and populate the city with clones, and I didn't want to sit there and draw 100 different dudes, so, I looked into something that I had heard of: paletteMap. Once I figured out exactly how to use it, it turned out to be simpler, faster, and better than I had hoped. I took my dude-sprite, chopped it up into smaller bits, saved the bits in grayscale, and texture-packed the bits. In code, whenever I want to create a dude, I take the bits, pick a random hue for each bit, and then apply paletteMap using that color, and stamp them all together into a new image. It works great.

I used a similar approach for the cars, as well.


Cars and People!

Next up was a fun part. Up until now, I had just made a simple csv for my maps to read from. Again, I didn't want to sit there making 100 maps for my game... I'm too lazy for that. So, I built some functions to generate maps for me. In the game, I have 7 'sizes' of buildings. Each size = how many hits it takes to destroy (and how much energy you get from it when destroyed). For the sake of being easy to see, I made them all color-coded, so the 'weakest' building is purple, while the 'strongest' is red.

I defined a few parameters for my maps - dials that I want to adjust as the game progressses to be able to make harder and harder levels. I came up with: Size (how big the map is), Density (how close the roads are to each other), Level (roughly how strong the buildings are in the map - low level is more purple buildings, etc), and Connections (how many roads exit the city and act as spawn points for enemies).

First, I make a blank canvas using Size, then, I add some perlinNoise to make a random mess of stuff on the canvas.

Next, I blur my image to make it a little smoother between building sizes.

Then, based on my Level, I darken or lighten the image some amount - this ensures that I have more buildings of the right size for my Level.

Next, I use threshold to apply the color for each of my building-strengths to the map, based on the darkness of the pixels.

Finally, I carve roads and connections onto the map based on Density and Connections.


The life cycle of a map

And that's is! I pass the final image over to the map building logic and it creates the actual tilemap based on it.


Map made of parameters: Size = 50, Density = 3, Level = 8, Connections = 6

...and that's just about where I am right now! I've added a few other minor things, like the player's 'energy' bar at the bottom of the screen and the 'Destruct-O-Meter' on the right. I'm still playing around with different win conditions and things, and working out how the game is going to play out. I think the next thing I want to work on is a world-map, and the start/end for each level... we'll see how it turns out.

Thanks for reading this, I hope you enjoyed it!
4  Community / Townhall / Re: Blasting Agent: Ultimate Edition on: January 07, 2016, 05:45:34 AM
FYI: the game is out NOW and available to purchase on Itch.io or the Humble Store!!

http://blastingagent.com/
5  Community / Townhall / Re: Blasting Agent: Ultimate Edition on: December 05, 2015, 06:50:46 AM
Thanks!!

Here are some codes for the soundtrack - anyone can take one, no obligation to vote or anything. Please post if you use one.

79st-eft7
v242-upuv
fvpw-jne9
mb9c-keft
9a24-g7e7

Goto: http://axolstudio.bandcamp.com/yum to redeem. Enjoy!
6  Community / Townhall / Re: Blasting Agent: Ultimate Edition on: December 03, 2015, 10:05:14 PM
If I happened to have, say, 5 download keys for the soundtrack, would anyone be interested in one? Wink
7  Community / Townhall / Blasting Agent: Ultimate Edition on: December 01, 2015, 12:38:33 PM
Hey guys, it's been awhile.

You may have seen me posting on here a few years ago, about a game I was working on (with Robert Lupinek) in AS3 Flixel called Blasting Agent.

Well, that game was released, and enjoyed a little bit of enjoyment, but, it was made as a Flash game, which meant it was doomed to suffer the fate of all Flash games.

Now, years later, after working on many more games between then and now, I've started up a brand new company called Axol Studio. With this new company, I decided to take a step back to my roots, and readdress this classic game that was really the start to my career.

I'd like to introduce you to: Blasting Agent: Ultimate Edition!

Harnessing the power of HaxeFlixel, it is no longer just your simple Flash game. It's bigger, better, and blastier. It's now a standalone, native Windows application, with Gamepad and Fullscreen support, brand new levels, bosses, and music, and more!

The game is almost ready for release - I've got about 2 weeks of loose ends to tie up, and then it'll be ready to go.
So, why am I here? Shameless self-promotion mostly, I'll admit... I'm hoping to get a few of you guys interested in the game, and hopefully, you can tell your friends about it, and so on.

If you want more details, please check out the fancy website for the game: http://blastingagent.com

I'm planning to release this on Itch.io at the very least, maybe on the Humble Store, and it's on Steam Greenlight right now (and I could use your votes, if you've got em!)

Oh, and regardless of what you think about the game itself (I know it's not everyone's cup of tea), if you like chippy/electronic music, you have to check out the soundtrack, done by the talented Bunnymajs: https://axolstudio.bandcamp.com/album/blasting-agent-ultimate-edition-original-soundtrack.

I hope some of you check this stuff out, and I'm more than open to some feedback.  Thanks for your time!
8  Jobs / Collaborations / Tile Isle Partnership on: July 02, 2014, 08:46:45 AM
Hello!

My name is Timothy Hely. I have been making games for the last six years, and I like to think I have gotten pretty good at it. At this point, I feel ready to turn this hobby into a sustainable career.

Tile Isle was created to fulfill that dream. In conjunction with MADSOFT Games, Tile Isle strives to create short, fun, arcade-style games that can be enjoyed by a wide variety of people.

Tile Isle's current game library includes:
  • Blasting Agent (2009), a side-scrolling platform action game.
  • FlxAdventure (2010), a simplistic RPG dungeon crawler.
  • Space Chase (2012), an exciting sci-fi themed survival game.
In order to continue work on Tile Isle and its games, I am searching for a Saint Louis, Missouri local to join me as a partner. The perfect partner would be in charge of the art and overall aesthetics of our games, while I handle the code. We would be equals in this partnership, splitting both the work and the rewards 50/50.

Other important qualities in a potential partner include:
  • Fantastic 2D pixel art skills; other 2D art skills are considered a big plus
  • A keen eye for color, style, and design
  • Excessive amounts of creativity and a thirst to see projects completed
  • Love for games and game development
Keep in mind: Tile Isle isn't raking in the big bucks. Any potential partners should be aware that it will take a good deal of time and energy before we can turn a profit. While we work towards making Tile Isle profitable, both partners will likely require another stable source of income.

If any of this interests you, then get in contact with me via email at: [email protected] and/or make sure you fill out this short questionaire: http://goo.gl/jfUkZv

You can also email me or message me any questions or anything you want about this. Thanks!

Links

9  Community / Townhall / Re: Released: Space Chase on: November 08, 2013, 08:11:34 AM
You've got something here! I was really entertained during my chem lecture.
Exactly part of the plan!  Evil

This is too addictive! Having procedurally generated levels was a great design decision, excelent job.

Thanks!
10  Community / Townhall / Re: Released: Space Chase on: November 06, 2013, 07:36:39 AM
Thanks, Udderdude.
The game is procedurally generated, and meant to get harder the further you get - plus you can unlock harder difficulties.
11  Community / Townhall / Released: Space Chase on: November 06, 2013, 07:16:45 AM
Hey guys!
I haven't been on the forum in awhile, but I wanted to share that my latest game Space Chase was released a few weeks ago!

Go play it and let me know what you think! http://space.madsoftgames.com/
12  Jobs / Offering Paid Work / Looking for Artist(s) on: May 28, 2010, 08:19:16 AM
Hey guys, thought I'd drop in here and see if anyone would be interested in working with myself and a few other people on a new (secret) game!

We're looking for someone (or maybe a couple of people) with some decent drawing skills to draw up some concept art for us to base the actual content of the game on. You would be taking the ideas we've typed up and coming up with sketches and diagrams to help make sure everything fits together and has a coherent look and feel throughout the whole process.

If possible, we would also like you to work on more polished artwork - characters in poses, etc - to be used in promotional artwork (ads/banners), or for other things (load screens, etc).

Some of the things you'll be required to draw include:
  • People
  • Animals
  • Robots/Machinery
  • Monsters/Crazy looking creatures
  • Possibly vehicles/weapons/devices
  • Possibly environments/landscapes

Also, we may be looking for someone to help convert the concepts into pixelated sprites and graphics to use in the game. Currently Ryan is doing most of that, but it would be nice to have someone that can help with the workload on that.

If you're at all interested, please leave a comment, or send me an email: [email protected] preferably with a link to your portfolio or something that we can see your work.

If you would like to know more about me or the team, check out http://www.tileisle.net/ for info on our other games.

We can discuss compensation privately.

Thanks!
13  Community / DevLogs / Re: Blasing Agent- Flash/Flixel Actiony Adventury Shootery on: February 24, 2010, 11:15:51 AM
 Shocked I don't think it's me... lol Robert, quick! Tell me something about Chaos Theory!  Cheesy
14  Community / Assemblee: Part 2 / Re: Assemblee: Part Two - Sub-Compo: Box Art on: January 28, 2010, 12:02:56 PM
Since no one likes my game, I made my own box Wink

15  Community / Assemblee: Part 2 / Re: Assemblee: Part Two Voting! on: January 25, 2010, 08:19:01 AM
I'm just happy I finished my entry. I'd definitely join a competition again if I could avoid the asset making, it's really not my thing. :p


Linus

Same here! I barely had a chance to get the final stuff in place, let alone do any tuning... 4 other projects going on does not a good competition make Tongue
16  Community / Assemblee: Part 2 / Re: FlxAdventure on: January 06, 2010, 10:57:04 PM
Could you explain what's going on in the little box at the bottom? It seems to be related to the combat, but the numbers don't make immediate sense. I'd love to get a little more detail about this, in the event I might jump in again later and slug it out to the last map.

-SirNiko

Sure! The Guy on the left is you, the guy on the right is whoever you're fighting at the time. Each enemy type has different stats. (HP, Attack, Defense)

Each time you choose an action, the game is going to make 4 'rolls'. It's your attack roll vs the monster's defense roll (the top line) and then your defense roll vs the monster's attack roll.

So if you have 2 Str and 2 Def, and the Enemy has 1 Str and 1 Def, and you choose to use the regular attack (Up), then you'll roll anywhere from a 0 to a 2 on your attack, and a 0 to a 2 on defense, while the enemy will roll 0-1 on both of his rolls.

Lets say the rolls end up like this:

2 > 1
1 < 1

This means you rolled 2 to attack the enemy, and he rolled 1 to defend, meaning he blocks 1 point of damage, but still takes the remaining 1 (this would show up in Red over the enemy)

The enemy's attack was a 1, and you rolled a 1 to defend, meaning you blocked all the damage he would have done to you.

Make sense?

Also, when your player 'levels up' or whatever, each rank adds a small bonus to Str and Def and also increases the Minimum values of those rolls... not sure of the exact numbers, but I think rank 1 (The grey armor) will make it so you can't roll lower than a 1 anymore...

Of course, if you choose to use a defensive block (left) you won't make any attack roll, and vice-versa for power strike (attack, but no defense), so they'll be treated as 0s.


17  Community / Assemblee: Part 2 / Re: FlxAdventure on: January 06, 2010, 01:03:25 PM
I played up to level 3 where my interest sort of trailed off.

I never really came to understand the combat mechanics. It feels like all I had to do was repeatedly use the UP attack and I'd win every fight. Victory seems assured if you take the time to explore each map and collect all the upgrades. I never came close to death even when fighting bosses like the minotaur in level 2. I'm not sure if combat becomes more difficult later in the game.

The lack of sound makes the game feel empty. You ought to add some soundtrack and sound effects.

I did enjoy exploring the world, and discovering all the little details, like rivers, libraries, crumbling chambers and the like. If there were more little treats like that it'd be more enthralling, I think.

It's a cute game, and revealing the world slowly has the same appeal to me that Small Worlds had. It's just not a particularly engaging game to me.

-SirNiko

Thanks.

Many of your issues are things that I really wanted to spend more time on but just couldn't.

Yeah I know it's not due until the 10th, but I have a million other things going on, and I had to wrap this up or risk it getting completely abandoned.

I intended to do some critical hits in there, but never got around to it, to make combat a little more random, and maybe add some more variation to the enemies stats. I am surprised you never died, I had a hard time testing it out (unless I enabled debug-super-stat-mode) without dying most of the time... If I had more time, I certainly would have spent most of it focusing on making the stats more balanced throughout the game. As it was, I thought it was much too hard and gave the player a bit of a buff at the last minute.



18  Community / Assemblee: Part 2 / Re: FlxAdventure on: January 06, 2010, 12:09:27 PM
Very cool.
I like the combat mechanic, and some cool use of the the environment tiles like the thrown room with the lich king in it! Is there anyway to pixelate the fog of war somehow to match the pixel resolution of the world?

Hm, didn't really think about pixelating the overlays... I could try that out, thanks!
19  Community / Assemblee: Part 2 / Re: FlxAdventure on: January 06, 2010, 11:41:21 AM
So, it may not be as polished as I had wanted, but it works, and it's got a complete... uh... story? yeah....

I chose not to use any sound or music because a: couldn't find any music I liked, and b: I think it would get super repetitive, super fast, and people would mute it anyway.

http://www.newgrounds.com/portal/view/523684
20  Community / Assemblee: Part 2 / Re: Finished Entries on: January 06, 2010, 11:08:58 AM
Code:
<td style="width: 350px; vertical-align: top">
    <strong>FlxAdventure</strong><br/>
    <em>by SeiferTim</em><br/>
    <a href="http://www.newgrounds.com/portal/view/523684">Play</a>, <a href="http://forums.tigsource.com/index.php?topic=9684.0">Thread</a>
</td>
Pages: [1] 2 3
Theme orange-lt created by panic