Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411430 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 19, 2024, 08:48:18 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogs/\/\/\/~~SCRIPT KIDDIES~~\/\/\/\ (DEAD)
Pages: 1 2 [3] 4
Print
Author Topic: /\/\/\/~~SCRIPT KIDDIES~~\/\/\/\ (DEAD)  (Read 15925 times)
NinthPower
Level 2
**



View Profile
« Reply #40 on: March 14, 2015, 05:49:46 AM »

 Smiley thanks. It may not seem like much but little comments like that mean a ton!
Logged

NinthPower
Level 2
**



View Profile
« Reply #41 on: March 15, 2015, 08:03:54 PM »

Just making a formal announcement that I'm going to submit Script Kiddies to Fantastic Arcade this year. The submissions deadline is July 13th.



I've heard a lot of other developers lately talking about how using a festival/competition submission really helped them focus and finish their game. I think July is just far enough out that I feel comfortable and just close enough that it will force me to hunker down and really push to have the game in a really solid state.

Wish me luck!  Hand Joystick
Logged

NinthPower
Level 2
**



View Profile
« Reply #42 on: March 17, 2015, 08:52:31 PM »

THESE ARE ALL WIP...
Chronos loser:


I have this weird thing about naming robots after Greek/Roman mythology in my games...



Isao loser:

I really like the IDEA of him throwing his head back first to give the animation more weight, but it looks weird when it comes from neutral... still gotta work on that.


TREX loser:


He honestly doesn't care he just likes playing video games... I'm going to have a TV glow effect on this during the actual animation too Smiley

slowly but surely moving forward on this stuff  Gomez
Logged

NinthPower
Level 2
**



View Profile
« Reply #43 on: March 20, 2015, 03:36:39 PM »

Man this took forever!


The game is at a point now that the core gameplay makes sense and the number of chisels and changes I need to make to the GAMEPLAY side of things is getting smaller and smaller. So now I need to start creating content and implementing the other characters' specials and what not. As I said in the UT Indie Night post, before I move on with the Story Mode, I want to get playtesting feedback for most of the characters (I'm holding a couple back for [SPOILERS]) and how they play with what I have now.

Since I'm pretty sure my plan is to only have an 80% finished build for the Fantastic Arcade submission, I should be able to get quite a lot done with the group of sprites you see here.

On the next post I'll hopefully have all the special abilities and sprites for each of these characters Smiley

Chuggin' along!  Gomez
Logged

NinthPower
Level 2
**



View Profile
« Reply #44 on: March 29, 2015, 08:42:16 PM »

Playtesting New Features/Characters: Chronos + Isao and Speed-Scaling

Things are moving along pretty steadily and I'e been able to add in a few features that people have been asking for. Here's what my Trello board looks like right now:


Pressing 'Y' to use your special ability was really the way to go. Now there's no slowdown like there was before when you had to choose the type of virus you wanted to send.

So I have two of the new characters' Special Abilities implemented: Chronos' Brute Force (automatically completes a script), and Isao's REPLY_ALL (sends a half-speed virus on all available floors). Friday night my good buddy and design/genius Drew and I tested out the new features and new Special Abilities. Here's what's up!:

Brute Force

(Quality is a little bad because I had to reduce the game window size. Game looks much crisper IRL.)

Chronos' special is all about observing and speed. One interesting mechanic that I didn't intend but has become pretty important for high-level players is forcing the other player to wait for the loading screen. Basically, if you can get a virus enough down the line, then you beat the player on that floor while your virus is down there, you send a virus first. But that's not the important part. The important part is that you force the other player to watch the loading screen, which gives your farther virus a precious ~3 seconds to continue moving closer. If you've planned right, it will be too close for them to defend in time and you'll win the floor!

Chronos' Brute Force ability can leverage this mechanic into closing out floors. If you've got a virus far enough across, the other player is going to be like "Oh crap I need to block that thing ASAP'. So they go to that floor, start entering in the script, but Chronos' comes along and beats you automatically, forcing you to watch the loading screen, and BAM! you lost the floor!

Brute Force is something many people have suggested as a Special so I think it's going to be really well received  Hand Thumbs Up Right Hand Thumbs Up Right Hand Thumbs Up Right

REPLY_ALL

So REPLY_ALL turned out to be SUPER awesome! At first we were a little scared that Isao would be too powerful and just destroy everyone. But what we realized is that, ya REPLY_ALL is super good in the early game, but once a floor or two are down (even if you've won them as Isao), REPLY_ALL becomes much less useful. I like that balance. It caters to really offensive playstyles. It also gives weaker players a strong early defense so they don't get overwhelmed too quickly.

A really cool thing happened when I played as Kevin (blocks opponent's screen with pop-ups) and Drew played as Isao. Because of Isao's ability to send viruses on floors he isn't on, its a bit of a work-around on floors where Kevin has placed his pop-ups. In fact, it worked so well that Drew was able to beat me fair and square with Isao! (I'm really good at this game haha) AND I'VE NEVER BEEN SO HAPPY TO HAVE LOST!! This is what I'm trying to create, a balance between player skill and player strategy. Drew beat me by leveraging Isao's Special in such a way that FORCED me to lose. That was a really important moment Smiley


Scaling Virus Speed With Floors Available
Also I've implemented one of the most important improvements: scaled virus speed. What I mean by that is that eventually everything will come down to only having one floor open and the two players will have to script head-to-head. This is always really tense and awesome! It's always hilarious to see people freaking out during this part Smiley The problem is that when you have two players who are really evenly matched in their scripting abilities, they could usually duke it out on that floor long enough for another floor to reboot. Now that might not seem too much of a problem because the player that is going to lose if they lose that floor has time to defend themselves and get back in the game. However, an unintended consequence of that 'balance' is that matches go on FOREVER for closely matched players.

Steve Taylor, who created a A Kingdom For Keflings, played the game recently at the UT Indie Night and suggested that the virus-speed across to the other player should be scaled: the more floors that are down, the faster they travel. So Drew and I tested this out and came to the conclusion that the best balance was for virus speed to remain the same until only one floor remains. Then it gets scaled up by about 120%. AND IT WORKS! It's just slow enough for really strong players to defend themselves, but it really gives the advantage to the player who was able to outsmart the other with their skills and strategy. Here's the speed comparison:

Normal Speed


Scaled Speed


One really cool thing that happened because of the speed-scaling is that Jack becomes way more viable as a character. His ability is passive and makes his viruses 50% faster. I've always had a soft spot in my heart for this little guy. I just really like his design and his character. But 50% speed increase just wasn't very appealing. Until now. Because of the speed scaling, Jack's viruses are BOOKING IT when there's only one floor left. In fact, in playtesting him, I started losing floors on purpose! While Drew was all stoked that he was killing one floor, I'd win another and we'd be on the last floor but all I had to win was one script and I'd win that floor. Now I have two floors one, and still have my speed increase for the final floor and BOOM. Game Over bruh.

If you've read this far you deserve an award! I'll have a new alpha build that you can check out soon!

LOVE,
Austin  Gomez
« Last Edit: March 29, 2015, 09:05:21 PM by NinthPower » Logged

NinthPower
Level 2
**



View Profile
« Reply #45 on: March 30, 2015, 06:57:06 AM »

Oh ps, I meant to say that the reason why matches going on forever is bad is because I've seen real player fatigue. Even when Drew and I are playing (We're really closely matched), we can be playing one match for 20+ minutes. And that's just way too long... I think the ideal match length is between 5-7 minutes.
Logged

NinthPower
Level 2
**



View Profile
« Reply #46 on: April 14, 2015, 10:53:38 AM »

One of my big goals for the Fantastic Arcade build is to have really good player feedback from the game. It should feel super good when you are successful. A lot of that is going to come from audio that I haven't put in yet, but one of the visual things is this colorful computer background for when the player uses her special ability:


(its a little squished to fit the GIF just FYI)

oh also lots of players have complained that R's look too much like A's, so now there are new and improved R's with extra R-iness! That's in the GIF too.
Logged

NinthPower
Level 2
**



View Profile
« Reply #47 on: April 19, 2015, 06:33:45 PM »

APRIL 19th - Dust, 'CAP' and Social Engineering

I was able to finish my Trello goals for this week Smiley


I think I have a strong vision for where the game should be before submitting to Fantastic Arcade. The overarching idea is to submit a really jam-packed, noisy, hectic demo with lot's of character and polish.

Here's what I got done this week:

DUST

I may end up making a pure pixel art dust animation, but for now this works pretty good. I was able to make it efficient by using only one particle system that handles the movement for both players. These are the kinds of polishings I hope to have all over the place in the end that will help the game feel ALIVE  Blink


CAP and Social Engineering
CAP's special ability is called Social Engineering. Social Engineering is a type of 'people hacking', which would take the form of something like calling up customer service at a company pretending to be someone from IT, then proceeding to get sensitive information from that person. They have Social Engineering competitions at hacker conferences like DEFCON where people call up big companies in front of a live audience! It's pretty darn cool. The idea is that you're getting the socially engineered person to hack themselves.

So the way I implemented that for CAP is that you essentially set a 'trap' on a floor, so that the next time the other play tries to send a virus, it actually sends one for the player playing as CAP:

You can see that CAP uses her special to set the trap, then when Jack completes the script and sends a virus, it actually sends one of CAP's (green) instead of sending his own (red).

Drew and I have found that Social Engineering can be really useful if you're strategic about it. For instance, the strongest use of it is probably setting up things so the last floor is socially engineered in your favor, so that you basically won that last floor because either you win the script and get the virus speed boost, or the other player 'wins' the script and sends a speed-boosted virus for you! These type of compound uses for special abilities is what I was hoping for in designing them, so it's always pretty validating when your mechanics get used in an unintended way that is totally awesome.   Hand Clap

Last but not least, the players need to have a way of knowing/remembering which floors are socially engineered so this little SE icon sits on the bottom right of both player's screens:



Moving Forward...
All the characters I want in for the Fantastic Arcade Demo are in so moving forward I'll be focusing on polish, game feel, and player feedback. A lot of that will take the form of audio cues and voices for the characters. Again, my goal is make things feel alive and robust. Time to set up the old recording equipment!

Toodles,
Austin  Gomez
Logged

NinthPower
Level 2
**



View Profile
« Reply #48 on: May 02, 2015, 05:20:00 PM »

MAY 2nd - INDIE MEGABOOTH, Background/Birds, Dust+, and Winning Room

As an intro, I just wanted to say that I guess I've decided to submit the game to the PAX Prime Indie MEGABOOTH! I really need to work hard this week on polish. But even if I don't get everything done, the game plays VERY WELL right now, and I hope that solid game feel will go a long way with the judges  Hand Thumbs Up Left

Here's what I got done this week:

ANIMATED/IMPROVED BACKGROUND and BIRDZZZ!!


I've added the fence, the moving clouds at different depths/transparencies/speed and flippin' BIRDZ  Hand Any Key. Like I said last week, now it's all about polish and feeling. This level is finally starting to come to life  Kiss


NEW DUST+


I said in the last post that I would probably end up doing a pure pixel dust animation. I did Smiley.

SPEED SYSTEM and GAME FEEL
This one is hard to feel in a GIF so I'll just talk about it. You can see it a bit in the dusty GIF above. Essentially, the speed system has a lot to do with character feel. Each character has ana associated speed/movement and I've added in more physics-based movement so each character has a more natural feel. For example, when the player is moving and let's go of the analog stick, before the character would just stop. Now it has a little slide and de-celleration. Just to give the movement a more organic feeling.

WINNING ROOM


just added little FX to make things funnnnnnnnner.

Toodles,
Austin  Gomez
Logged

NinthPower
Level 2
**



View Profile
« Reply #49 on: May 08, 2015, 10:00:00 PM »

Just submitted to the Indie MEGABOOTH! Fingers crossed man, fingers flippin' crossed...
Logged

Pezomi
Level 0
***


swag swag swag


View Profile WWW
« Reply #50 on: May 08, 2015, 10:36:10 PM »

Just submitted to the Indie MEGABOOTH! Fingers crossed man, fingers flippin' crossed...

Good luck man!  Hand Thumbs Up Left Smiley Hand Thumbs Up Right
Logged

NinthPower
Level 2
**



View Profile
« Reply #51 on: May 09, 2015, 08:10:14 AM »

Good luck man!  Hand Thumbs Up Left Smiley Hand Thumbs Up Right

Thanks Brady!
Logged

NinthPower
Level 2
**



View Profile
« Reply #52 on: June 02, 2015, 10:03:53 AM »

Hey all, took a few weeks off just doing school stuffs and what not. But exciting things are coming! I'm prepping a demo for release in the next month! On Windows, Mac, AND Linux  Hand Clap

One thing I'm working on currently is a Twitter Splash Screen that will show at the end of each round. After each game two players get through, before going back to the menu, I'll have a screen with an avatar of me and my twitter handle. This will be some free publicity and a good way to get people to follow the development of the game.

I didn't think up this idea on my own, though. I've recently been playing Flamberge: a REALLY cool strategy game by @hydezeke that you should all REALLY TOTALLY check out (no really, for reals).

Whenever you quit the game to the menu, the game shows a screen with the creators twitter handles, so I'm going to do something similar. I'll have a little animation of me, surrounded by some thing I like (games, books, music, etc.) and my twitter handle, before taking the players back to the menu.

Here's me (WIP):


I think it would be cool to have an alternate one too that would play every so often. Maybe me doing some Micheal Jackson moves, since everyone else in the game gets to dance!

Anywhoo, expect some updates in the coming weeks.

Toodles
-Austin  Gomez
« Last Edit: June 03, 2015, 05:16:51 AM by NinthPower » Logged

NinthPower
Level 2
**



View Profile
« Reply #53 on: July 04, 2015, 10:29:28 AM »

The (Computer) Age Old Question: Is Math Needed For Gamedev?





TL;DR: kinda?


I picked on these tweets by two of my favorite developers and thought it was pretty hilarious  Tongue Totally JW's style to be like "whatevs" about math and Jon Blow to be all "Unless we go into the deepest chasms of human logic, we will never know the importance of arctangent..."

I was recently faced with an issue in making my planned twitter splash screen that I used math to solve. Trigonometry to be exact. You see what I wanted to do was have the black ship in the picture below have the appearance of flying around my pixel-y head, showing the turning sprites at both half turns so it would appear as if the ship is always heading in the direction of its motion. I also wanted to have the ship shoot that white bullet at about the point it passes my head each time flying by.



Now the idea for this isn't too hard, but my constraint was that the ship's pattern and behavior needed to be EXACTLY repeatable ad infinitum. In other words, its motion needed to be PERFECT (at least for me to be satisfied).

To get any kind of back and forth motion in games, it's a really good idea to use sine/cosine functions:


No matter how large your input/angle gets, the movement of the object will always follow an up and down pattern. Trying to get a smooth back and forth motion with if statements or timers or anything else is WAY too much work!

So I knew I wanted to use a sine function for the back and forth motion, but I didn't quite know how to get a PERFECT timing on the sprite switch/turning and how to get a PERFECT shot at half the motion... You see I really do fall in the JW camp. I love programming and it is super satisfying, but I am not a 'classically' trained programmer who understands historic algorithms, has  perfectly indented code and the like. I'm more like, "Look, computers are way powerful in 2015 which means you don't have to be as good at this stuff." But when I tried to make this motion I wanted with guess work and if statements, it didn't come out right! I don't have a GIF of it but I wish I did. It was super wonky. By this time I was pretty frustrated and had spent about an hour and a half on the problem when I realized, "Oh ya hey I'm a Biochemistry major and I've taken Trig and Calculus what the hey?! I can do this so easily!"

Sometimes I forget that I actually really liked Trigonometry...

To do what I wanted, I simply leveraged what I know about the unit circle, or i.e. the trig functions. As seen in the sine function below, specific angles return characteristic outputs along the unit circle:


(30 degrees corresponds to a third up the sine wave, 90 degrees corresponds to the top point, etc.)

These specific, discrete and PERFECT properties of a sine function offered me the structure I needed to produce the motion I wanted! My notes:




And it came out exactly as I hoped!!!:


So, now to answer the question in the title of this post: Is Math Needed For Gamedev?: My opinion, through this and other experiences are: if you know it, you can really save yourself a lot of time in a lot of meaningful ways. But... then the other question: was this a meaningful way? Well, kinda? I mean it's just a twitter splash! It's totally self-serving! So, I guess I can't answer that question (surprise). But I will say one thing...

That Twitter splash doh.

 - Austin
« Last Edit: July 04, 2015, 10:37:43 AM by NinthPower » Logged

Mixer
Level 1
*


I've never really known what to put here.


View Profile WWW
« Reply #54 on: July 04, 2015, 06:10:28 PM »

I'd say it is needed in game dev, although it is not always difficult. Math libraries are going to abstract most of it away into a function call, you just need to understand the right functions to call, and that requires math understanding. Most of it can generally be found very quickly on the internet though.

Even things like understanding velocity.x is just changing the x value every update is what I consider math, although like I said, not difficult at all. If you are programming a 3d ray cast engine though, then the math will likely be more difficult. All programming uses math, in my opinion. XY is the cartesian plane  Tongue, just sometimes it is abstracted away. This is all just my opinion though.
Logged

My twitter is @5Mixer.
I'm currently making a dungeon game, check it out :D
https://forums.tigsource.com/index.php?topic=59139.0
NinthPower
Level 2
**



View Profile
« Reply #55 on: July 10, 2015, 10:11:49 AM »

Ya, when I talk with other devs, I think that is the general consensus. Like JW said, computers are pretty cool, but sometimes gamedev can be like needing a tool for a home improvement project, having the exact right tool in the toolbox, but you don't know that what the tool does is what you need. Being familiar with functions, even just their graphs, can go a long way in solving specific problems Smiley
Logged

NinthPower
Level 2
**



View Profile
« Reply #56 on: July 11, 2015, 07:59:15 PM »

Just finished up the Fantastic Arcade build with new icon/Kiddies animations and a cool sine-waving "Fantastic Arcade Build" version swag:



Happy Weekend,
-Austin
Logged

clewcat
Level 0
***


clewcat on the fly!


View Profile WWW
« Reply #57 on: July 16, 2015, 08:49:20 PM »

Like the way you are doing with pixel art - simple and effective - and wonder if someday I can learn that. Is there any demo available to playtest?
Logged

NinthPower
Level 2
**



View Profile
« Reply #58 on: July 17, 2015, 09:05:59 AM »

Like the way you are doing with pixel art - simple and effective - and wonder if someday I can learn that. Is there any demo available to playtest?

Thanks, but clewcat your pixel art is awesome what are you talking about?!

I am planning to release a demo in itch.io by around Septemberish.
Logged

NinthPower
Level 2
**



View Profile
« Reply #59 on: August 08, 2015, 11:32:42 AM »

How I Got Platformer Pathfinding to Work



 So I figured that before I release a demo of the game (which will coincide with the Greenlight campaign), that I shouldn't make the game local multiplayer only. Multiplayer is where the game really shines, but I think it will also go a long way to have a player vs. computer option in there. It has to be done for the eventual story mode anyways, and since I'm out of school for the next 6 weeks, now is the best time I'll have in a while to get over this "AI hump".

 So obviously there's all kinds of needs for pathfinding in games. One of the most popular pathfinding techniques is called A* Pathfinding. I've been hoarding materials about platformer pathfinding for about a year now because I've been so fearful of this stuff! Whenever I encounter something in gamedev that takes what I would call "real programming", I get scared and shy away, hoping the problem will just disappear Sad It didn't.

Here's the resources I studied:

Zack Bell's Overview of Pathfinding Part 1

Zack Bell's Overview of Pathfinding Part 1

Joost (from Awesomenauts team) blog on how they did pathfinding in Awesomenauts

Patrick Lester's A* Pathfinding for Beginners

 When I have a giant problem like this, I think it's really important to study and get a real grasp of what's going on before writing a single line of code. It made the eventual code much cleaner and I felt a lot more confident.


Some of my notes on my study material.

 So after reading all that stuff about A* pathfinding I developed a system for what I wanted to do:

 + SET-UP:
   - Place pathfinding nodes at key places in the level (ladders, computer terminals, etc.)
   

   - Have each node store a list of it's neighbors to which there is an unobstructed path
   

 + GLOBAL SOLVER
   - Use GameMaker's built in pathfinding functions to build a path from the player to the goal node
   
   Green are passable and Red is impassable. The global solver uses GameMaker's mp_grid functions to do this.

   It is important to note that there are essentially two types of pathfinding occurring in this step: finding paths from node to node, and finding an overall path to the goal node. What I'm doing is running through the neighbors_list[] array and using the mp_grid functions (read A* functions) to find which node one of the neighboring nodes has the shortest path to the goal. This is the first type of pathfinding. THEN I create a GLOBAL path of my platforming nodes based on the sequence of nodes that will get me to the goal. This is the second type of pathfinding, and it is the one that actually gets passed to the LOCAL_SOLVER. It would look something like path_queue[ladder_1_node, ladder_2_node, goal_node]. (Note that I'm using a queue data structure (again, these are native functions to GameMaker), but normal arrays or stacks could work if you wanted to do it that way.)

 + LOCAL SOLVER
   - Use the built in movement mechanics I already have in the game to get the player to each node in the path.
   Now that the AI has the path from the global solver, I simply tell the player object to press the proper internal controls to get to the next node in the queue/path:
   


 I also made it so that the AI can switch goals on the fly and change direction (watch the "Goal: X" indicator above Kiki's head change):


 This is important because as floors go down or the 'danger level' of each floor goes up, that AI may need to change goals based on what's happening!

+ What I Learned
 DON'T BE AFRAID OF HARD THINGS. As long as you don't set unrealistic expectations for big issues in your game, YOU CAN DO THIS! It takes time (mind you all I've done is make it possible for the AI to get to a goal, I have no behavior trees in place yet), this took me three weeks, but if you're patient you can do "real programming"!

See ya soon
- Austin
Logged

Pages: 1 2 [3] 4
Print
Jump to:  

Theme orange-lt created by panic