Recent posts by dragon_of_celts on Kongregate

Flag Post

Topic: Game Programming / GiTD #44 - *Contrats I_love_you_lots/dragon_of_celt s*

I_love_you_lots and dragon_of_celts are neck-and-neck! Who will win the prestigious GiTD #44 contest? Everyone’s so excited they forgot to vote!

Originally posted by Shalmezad:

Voting ends October 4th at 9PM EST (later than previously announced due to a major US holiday and start of school for some people)

Uh… What major US holiday? The only “major” holiday in October I can think of off the top of my head is Halloween (which isn’t really “major” in my book, but the potential for time-consuming holiday shenanigans is fairly high, so I guess it’s “major” in that respect — but it’s at the end of the month, so it doesn’t really factor in). I even Googled “October holidays”, but didn’t get anything noteworthy.

 
Flag Post

Topic: Game Programming / [Solved] Serialization sucks - HALP!

Take a look at the comment and answer at the bottom of this page, regarding using IExternalizable to circumvent object serialization problems. Not sure if it will help you, but might be worth a try.

Just out of curiosity, do you serialize multi-dimensional Vectors anywhere else (ChapterData has aRegionData double-Vector)?

 
Flag Post

Topic: Game Programming / GiTD #44 - *Contrats I_love_you_lots/dragon_of_celt s*

Well, my first- and second-place votes go to I_love_you_lots. ;)

Just as a pre-emptive comment:
Cat Jihad
Sacred – well, they are supposed to be sacred stones that you’re protecting; but you can call anything “sacred”, so it’s kind of weak.
Territory – you’re protecting your territory, I suppose, but that’s even weaker than the excuse for “sacred”.
Helping – You can heal your allies (and if they moved, they could heal you, too) and empower the shrines, so maybe it qualifies.
Turn-based – complete fail

So overall adherence to the theme is abysmally low (in my defense, the original game I was working on actually met all of the above — though “sacred” would be unchanged).

Known issues:
No proper end (needs refresh)
Pushing not implemented (and no pits to push into)
Allies don’t do anything
No HP or XP indicators
Allies not repositioned after selection phase, so Brute is under the blank HUD

 
Flag Post

Topic: Game Programming / GiTD #44 Theme Suggestions

Originally posted by Shalmezad:
Originally posted by dragon_of_celts:

Cat Jihad

Right as I was typing the finale post.

Well, since you caught me before I clicked submit:

That concludes GiTD #44. Voting thread will be up shortly.

Fast SWF didn’t seem to want to let me upload it for some reason. It took me something like 6 or 7 tries.

Wow. Only two entries… and one being my pathetic crippled one. Well, I guess expanding the theme didn’t do much to help participation… or anything, really.

 
Flag Post

Topic: Game Programming / GiTD #44 Theme Suggestions

OK, so this isn’t at all what I was originally working on, and it’s nowhere near complete, but…:

Cat Jihad

I was working on a game heavily influenced by Monster Tap, which satisfied all of the theme elements (including being turn-based). Had a bit of a problem that I didn’t think I could take care of in time, so I scrambled to make Cat Jihad…

Pushing doesn’t work yet, and there’s only one enemy: the Rountwit… and your allies don’t do anything right now.

Click to move (when selected cat-thing is ready). You’ll do more damage if you bump into Rountwits when in attack mode (you go into attack mode when you click on or near a Rountwit). You’re supposed to protect the shrine stones from them… After killing some enemies, you can (theoretically) transfer some XP to a shrine stone by touching it. Once enough XP is transferred, the shrine stone will become warm. When the enemies touch the shrine stones, they drain warmth. If they get very cold (dark), it will take twice as much XP to warm them. If you can get a shrine stone to critical mass, it will light up, and any XP you have when touching it will go toward leveling you up and increasing your stats. Unfortunately, I didn’t get around to XP and HP indicators, so you’re playing blind.

If the allies were functional, you could heal them when they are wounded and vice-versa. Once you’re all knocked out, it’s over (well, not really, as it doesn’t check for that yet).

 
Flag Post

Topic: Game Programming / GiTD #44 Theme Suggestions

Originally posted by I_love_you_lots:

Am I the only one working on an entry?

I am working on one. I hope it will be ready in time (at least a simple version). One day left, but a lot left to do…

 
Flag Post

Topic: The Gate / new event, extended waves

You aren’t getting extra waves at all — the wave counter gets messed up some times. It’s been happening to me for ages.

 
Flag Post

Topic: Game Programming / GiTD #44 Theme Suggestions

Originally posted by dragon_of_celts:

Italicized items have been changed by me (to reflect current contest), and are subject to change by Shalmezad.

Originally posted by Shalmezad:

There’s 3 phases (write down these dates):
Theme selection: Now – September 21st
GiTD #44: September 21st at 9PM EST to September 31st at 9PM EST
Voting: September 31st – October 2nd 9PM EST
Winners announced: October 2nd 9PM EST

I just realized that I didn’t take into account that there are only 30 days in September, so contest end date should actually be October 1st, with voting from the 1st to the 3rd.

 
Flag Post

Topic: Game Programming / [Solved] Input text field acts weird when not put on stage.

I don’t know if this will help at all, but I was having difficulty with TextField cutting off text, and specifically setting it’s autoSize property fixed it (the default is TextFieldAutoSize.NONE, so set it to LEFT, RIGHT, or CENTER).

Here’s Adobe’s page on scrolling text in TextField — I didn’t read through it, but it looks like you have to “roll your own”…

 
Flag Post

Topic: Game Programming / GiTD #44 Theme Suggestions

Originally posted by I_love_you_lots:
Originally posted by Shalmezad:


Game Mechanic: “It’s like standing in the rain without getting wet”

Wait…

…that’s not a game mechanic!

Isn’t it the equivalent of writing “bullet hell”? Alternatively, it could be a repellant or shielding force…

 
Flag Post

Topic: Game Programming / GiTD #44 Theme Suggestions

Well, I assume Shalmezad is busy (I PM’ed, but no response), so I’m just going to put this up here, just in case (since he originally said the contest would start on the 21st). Italicized items have been changed by me (to reflect current contest), and are subject to change by Shalmezad.

Originally posted by Shalmezad:

Ladies and Gentlemen!
Boys and girls of all ages (above 13 years of age due to terms of service)!
Welcome to yet another round of GiTD Theme selection!

So, for those of you who are new:
GiTD is “Game in Ten Days”, where developers from all over the world and different skill sets compete to make the best game they can in ten days while still sticking to the theme.

There’s 3 phases (write down these dates):
Theme selection: Now – September 21st
GiTD #44: September 21st at 9PM EST to September 31st at 9PM EST
Voting: September 31st – October 2nd 9PM EST
Winners announced: October 2nd 9PM EST

Theme selection
This thread is dedicated to the theme selection. Based on feedback recieved here this will go slightly different.

#All suggestions that aren’t extreme will be fed into the RNG.
#The RNG is now set up to pick between nouns, verbs, adjectives, and game mechanics. Your game must include the nouns,verbs, and adjectives that come up. The game mechanics are optional.
#Suggesting old themes is allowed
#The more random the input, the more random the output. You can’t have combustible lemons if life doesn’t give you lemons.

My suggestions for this month:
Noun: Territory
Verb: Capture
Adjective: Shapeshifting
Game Mechanic: resource management

 
Flag Post

Topic: Game Programming / Troubles with Array lenght!

You have “length” misspelled in all cases except for the ‘armo’ element, which is why that’s the only one that returns a proper value.

 
Flag Post

Topic: Game Programming / Troubles with Array lenght!

I believe your compiler thinks that you were actually creating a new Array and initializing it to have one element (containing a reference to LISTS[‘armor’], which has 3 elements). LISTS is a multi-dimensional array already — so I assume I don’t have to explain how that works.

Your trace statement should’ve been:


trace(LISTS[‘armor’].length); //==> 3

You obviously figured it out on your own, as you did exactly that when you called it “array”.

 
Flag Post

Topic: Game Programming / as3 how to detect the edge of a movieclip

That’s OK if you don’t mind the character being halfway off the floor (since character.x is in the centre). Otherwise you’ll need to add or subtract half the character’s width to character.x when you test.

 
Flag Post

Topic: Game Programming / as3 how to detect the edge of a movieclip

Assuming that the character’s registration point is the top left (default):

if (character.x < floor.x)
{
   character.x = floor.x;  
}
else if (character.x + character.width > floor.x + floor.width)
{
   character.x = floor.x + floor.width - character.width;
}

Keep in mind that if the character doesn’t have the same direct parent as floor, that you will need to adjust their coordinates (since they won’t be using the same coordinate space); or, if floor is character’s direct parent, you should remove the “floor.x +” parts of the above code (replace floor.x with 0 on top lines).

 
Flag Post

Topic: Game Programming / Happy Programmers Day!

Well, that’s pretty good, but your code gives two errors:

line 8: A string literal must be terminated before end of line

line 15: artist is never flogged

 
Flag Post

Topic: Game Programming / Happy Programmers Day!

Pfft. That’ll never work. It should be:

while (programmer.brain < drunk)
{
   if (artist.hasFunds())
   {
      shots += artist.buyShots();
      programmer.quaff(shots);
      ++roguelikeRef;
   }
   else
   {
      artist.flog();
      if (!artist.likesIt)
      {
         artist.whoreArtwork();
      }
      programmer.chomp(peanut);
      ++perlRef;
   }
}
 
Flag Post

Topic: Game Programming / GiTD #43 - *Congrats Halysia*

Congratulations, Halysia.

Originally posted by Shalmezad:

dragon_of_celts, thanks for the idea on the theme selection.

Sure thing; I’m glad it worked out.

dragon_of_celts
Feedback Optional (no developer preference)

Not that it matters, but I actually wrote that I preferred feedback.

Originally posted by Aesica:
Flappy Horror: The clicking isn’t very meaningful because it’s pretty easy to “stay afloat” while not going within range of the death walls. Needs a clear goal other than just “harvest body parts.” Maybe have each level provide a “shopping list” of what’s needed to build a homunculus and pass the level. To add spice, certain “creatures” yield more of a certain body part, so you could reward players who harvest effectively. Finally, while I’d like to say that more hazards should be present, I think they might be overly annoying and unpleasantly difficult to avoid, given the current controls.

Originally, clicking gave a very weak flap, and so a ridiculous amount of clicking was required just to “tread water”. The right/left acceleration and the flapping force were both just test values that I had intended on tweaking later, but I figured easy flying was better than too difficult for a weak proof-of-concept (which is all I had time for).

The rift was eventually supposed to vomit up its own “death walls”, thereby making a kind of “Flappy Bird in the Round” type of thing. The rift would get “stronger” in certain time increments (which decrease the longer one plays), which would give the antimatter and rift death walls greater range and speed variation.

There was supposed to be a kind of “card collection” thing for the homunculi, with different kinds that could be made. Still would’ve basically been the same as scoring, though a little more in-depth and with graphics. If I do continue with it, I think I’ll incorporate some variant of your “shopping list” idea (certain types of homunculi needed to conquer different worlds).

Originally posted by DarkRainyKnight:

Pros: A unique game. I’d be interested in seeing how you would further expand the game. Plus “The Horror” (I named your creature that. I hope you don’t mind.) was kind of cute c:

Cons: The controls. I couldn’t really tell much difference between the attacks. Even though I understand why I was clicking so much it still quickly became monotonous.

Of course The Horror was cute… Remind me to wear peril-sensitive sunglasses if I ever meet your girlfriend.

The only difference (visually) between the attacks is the colour of the tentacles (the white-ish ones are the bone pluckers, the reddish ones are the organ harvesters, and the tan ones are the flesh peelers). Ideally, I would’ve made them more distinctive, but that’s very low priority on my list of things to do.

Just as a side note: “constructive criticism” doesn’t mean “only give positive comments”. It means that negative comments should be made with the sole purpose of helping to improve whatever is being criticized (rather than pointless negativity).

 
Flag Post

Topic: Game Programming / GiTD #43 *Flying Rotating Horrors*

…And now, I present to you my entry for GiTD #43 and 1GWICGMLATM1*:
Flappy Horror.

The real horror here is the code.

I hadn’t bothered with a preloader (hopefully not really necessary, anyway).
It’s a bit dull at the moment, and not exactly pretty. There were supposed to be different creatures and artifacts and whatnot, and the rift’s power is supposed to increase over time (manifesting in increased antimatter wall movement, among other things), but right now there’s only one creature type, and two “settings” for wall movement (stopped and random — you have to wait a bit before the random starts). I need to tweak the movement values a bit, I think, too. As is, the component parts and homunculi are just basically scoring — I was intending for there to be different homunculi that could be made.

Anyway, I’m going to be away and without access to internet for a bit, so unfortunately, I’m unlikely to be able to vote or give timely reviews (which reminds me: I would prefer reviews, for those willing to give them).

* 1 Game Whenever I Can Get My Lazy Arse To Make 1

 
Flag Post

Topic: Game Programming / Sounds In Python TKinter Program: "Focus" Control Between External Program Windows

Google search brought up
this, which looked like it might be what you need (or maybe this?). These are both #3, which is not necessarily the best solution.

 
Flag Post

Topic: Collaborations / collaboration for taking game to new direction

Yes, unfortunately, there is no “newly updated” category (and probably wouldn’t be the default setting, even if there were, which means you’d likely still miss a lot of people). Kongregate’s current system encourages uploading a completely new game every time you make a major update (in other words, don’t update your old one, do it like it’s another game altogether).

Good luck on your projects.

 
Flag Post

Topic: Collaborations / collaboration for taking game to new direction

A 3.1 rating does NOT mean most people hate your game. 3 is middle-of-the-road. 5 stars is the max you can get (and very, very few will get close to that — the highest rated game is close, but not quite, 5 stars). The biggest reason why most people won’t give it a second chance is that they won’t know it has been updated unless they check your game’s page — which they’re unlikely to do unless it has been updated (unless you get rated high enough to get badges, and then actually get them). It is a great flaw in Kongregate’s system that entrenches and reinforces the badged games at the expense of all others.

I still see your game in the “newest games” list (on page 2 now). A game is “under judgement” until it gets a certain number of reviews, IIRC.

I don’t know why my IE can’t handle your game — it does most others…

 
Flag Post

Topic: Collaborations / collaboration for taking game to new direction

I don’t know about others, but I could barely get the game to respond. After clicking on the “play” button and waiting for half a minute or more, if I was lucky it would start the game — from there it only got worse. Pressing a movement key yielded no response, except occasionally, long after, it would react like I was holding the key down. It is, literally, probably the laggiest game I’ve ever encountered (and that’s saying something) as far as user input response goes. Couldn’t actually play the game enough to tell you anything about it other than that.

Edit: This appears to be a browser issue — the above was using IE 9; in Firefox the game functioned OK. Keep in mind that IE has the 2nd largest market share, according to Wikipedia, following Chrome.

Needs some spelling and grammar checks. Being able to be attacked/killed by something while checking the items/stats screens is not good, so I’d suggest an auto-pause. “Spinning item” doesn’t appear for me in the tutorial, and when I quit the tutorial after reaching the guy at the end, the “talk to this guy?” box appears under the main menu buttons. Being able to see what changing a stat does before you change it is important, especially if the user can’t change it back afterward.

An indicator that a skill is currently selected and pending would be good (I can select “Ground Pound” and walk around for a while, but there is no indicator that it is the action that will occur the next time I click). Since skills apparently have a max level, a # of # would be nice (e.g., level 1 of 7 or 1/7). Personally, I never bothered using anything but Ground Pound and my basic attack…

No magic hammer anywhere — all bandits dead, all boxes looted. Also, it should be noted somewhere that leaving items laying about to pick up later won’t work, as they’ll disappear.

Not a bad game, but needs a better ending. And if the guy guarding the cave is for an area not implemented yet, I’d make it invisible to players until it is.

 
Flag Post

Topic: Game Programming / Animating via code plus other issues

The simplest way is to have a completely separate animation for walking and attacking at the same time (for however many directions are relevant). The more complicated way is to break your character into parts, making sure they align at all the proper places, so the relevant part would be concerned with the relevant action: the feet would stand/walk/jump/etc, the arms would stay still/swing (from walking)/attack/etc, the face would exhibit an expression based on player’s status, and what have you.

Is that what you meant?

I think most programmers opt for the simple way.

 
Flag Post

Topic: Game Programming / Deleting letters

Originally posted by AshAbeAdd:

The textfield is what showing the person’s typing. Then when it is entered, or maybe at the same time it’s being pressed it goes into an array.

“Maybe”? You don’t know? Isn’t it your code?

Here is what I’m assuming, based on what you’ve said so far (and my understanding of it):
User types, and the keystroke is captured, as in most Flash applications. You check to see if the key code is for backspace or enter. You push the key code onto an array — hopefully if you receive a backspace you’re popping the last character off of the array instead. Each time you receive a keystroke, you update the TextField to reflect what has been typed by joining the elements of the array and setting the text of the TextField to the resulting String. Yes?

You are getting the glyph because the backspace character is being added to your String — and it shouldn’t be.

// let's say that your character array is called typedChars, and your TextField is called assembledText
// inside function where you handle key presses (pseudo-code):
if (keyCode == BACKSPACE)
{
   typedChars.pop();
}
else if (keyCode is alphaNumeric)  // yes, remember, this is pseudo-code
{
   typedChars.push(keyCode);
}
assembledText.text = typedChars.join("");

Note that in the pseudo-code above, the key code that contains the backspace never touches the array, nor the TextField. You shouldn’t need to screw around with the visible property in order to not show the backspace glyph because it shouldn’t ever be in the array or the TextField in the first place.

If I’m off base or you don’t know what I’m saying, show us your code.

Originally posted by AshAbeAdd:

My main question now and somewhat what I really wanted to know at the start of this discussion is, how can I change the character glyph to give a different glyph.

You mean like “if (keyCode == BACKSPACE) typedChars.push(somethingElse);”? You aren’t going to change the assigned glyph, but you can substitute something else… but you don’t need to do that if you just handle it properly in the first place.