Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 14 May 2006
Online Last Active Today, 07:56 AM

#5171988 Funniest line of code ever ?

Posted by CRYP7IK on 06 August 2014 - 09:53 PM



This whole fizz buzz implementation is hilarious.

#5157777 Creating a code editor/IDE

Posted by CRYP7IK on 03 June 2014 - 05:00 AM

There are two projects that use wxWidgets \ scintilla for a code editor or IDE and they both have some form of auto-complete and snippets, they are also open source. They also show off plugin architecture and pretty much everything to do with getting your own IDE up.




#5156885 Creating a code editor/IDE

Posted by CRYP7IK on 29 May 2014 - 10:25 PM

I would use wxWidgets. Mostly because it comes with an easy to use cross platform scintilla like API and an example using it. So I would use wxSTC with wxAUI with dynamic notebooks.


wxSTC handles a lot of the things you would need in a code editor have a look at:





for features and the API.

#5143468 Linux development...

Posted by CRYP7IK on 31 March 2014 - 08:10 AM

code::blocks - great, some issues with autocompletion sometimes

codelite - pretty awesome, some plugins aren't free

vim+spf13 - very good historical fuzzy auto-complete + snippets main<ctrl+k> will give you a full int main(..). or class<ctrl+k>ClassName<ctrl+k> will fill out a simple class def and impl and a lot more

eclipse - awesome auto-complete lots of different languages

#5098060 How to do starcraft 2 pathfinding?

Posted by CRYP7IK on 01 October 2013 - 08:30 AM

Well, I am no expert but I actually have pondered this myself and the following are my conclusions:




And how does it deal with dynamic obstacles like idle units?


Well this is easy, and you answer it yourself with 'boid steering' but I will explain that further. So each unit has some kind of inner area of influence and an outer area of influence, see my mspaint picture:




Now one can, using math, get a value of 0.0 - 1.0 of your position between those area of influences! So using this 0.0-1.0 value you can slowly steer the units steering vector away based on how close you are to another units inner area of influence. E.g:




Now buildings can easily mark A* nodes as closed \ open on demand with little performance impact and if A* can't find a way out it just gives back the path up until it deemed the end point impossible to get to.




What exactly are the nodes of A* on navmesh?


Well nodes of A* are generally just a grid representing passable \ not passable terrain and that can be enhanced with a navmesh that basically says all of this is a node and matches an area precisely (or more precise than a grid)...hang on there is an article I read about this a few years ago:




There you go! Have a read of that it should answer the rest of your questions I think. Digest that information and ask more!

#5098052 proTile Map Editor for Unity

Posted by CRYP7IK on 01 October 2013 - 07:20 AM

Wow, that is pretty amazing!


The only thing I could think while watching the video is being able to automatically create 'patterns' on the fly by multi-selecting things and right clicking or something. Other than that though pretty impressive.

#5077727 Game Engine Layout

Posted by CRYP7IK on 14 July 2013 - 06:05 PM

I have a question: Is this supposed to be used in one game? If so this engine seems fine, minus having no alpha which might be on purpose.


However if you then tried to adapt it to some other game the GameEngine class leaves much to be desired especially if the update function gets too large with too many different states. You can fix that with a slightly more advanced state machine to look after the states(Which would then be a separate class).


I was writing up a StateMachine example class when I remembered about the crazy number of gdnet articles, check these out:










Although, again your engine is very nice and if it works for your purpose don't over-engineer it.




#5041008 Article Inspiration

Posted by CRYP7IK on 08 March 2013 - 06:47 PM

I think this is a great idea, however I think the delivery of these articles does need to be discussed as well as ease of writing an article, how easy to find and accessible the articles are. What is the stance on Localisation? Are we going to bother with it?


First of all, should it be standard practice to include videos with the article (I think it should be, some people require visual and audio aids to learn)? Does GameDev have the bandwidth or do we host those videos with youtube and link to them? Are we even allowed to include videos in an article or is this supposed to be book-like only? Some serious thought should be put into this as we are using the web, why limit ourselves to being a book, why not a super-book! Obviously we would still have to make sure we have lo-fi versions(No automatically loaded video and make this easily accessible) to bring in those with limited bandwidth.


We should also think about the writing process of the articles, if you want more people writing articles you should make it easier to write them, so I have thought up of a few ideas to help in that regard, here is one. Make articles more of a collaboration rather than one author does one topic. You would probably have to limit collaborators to a few people, or have something like a 'pull request' on articles. This would alleviate the problem of  an Author feeling overwhelmed with writing (Well, if someone actually contributes).


Some topics I think should be covered include waterfall all the way to all the agile project management techniques and what free sites \ programs are available to use to handle projets (Trello, smartsheet etc).


Sidenote: Until I saw the board this was posted in and the title I saw development libraries and thought a GameDev.net engine! Then got super excited until 1 second later when I actually started reading things. sad.pngtongue.png







#4987807 AI Creation

Posted by CRYP7IK on 07 October 2012 - 06:28 PM

Wod, have you ever tried to use AI that learns on it's own, even within very limited parameters they will usually fail spectacularly or in weird uncontrollable ways.

If you then add any tweaking you may as well have just done your own logic to get the behaviour you want much faster and with more control.

I have heard stories of completely learning AI in military, such as one that learnt to detect hidden tanks, they taught it using millions of pictures. Then when they took it out into the field to test it, it gave completely messed up readings: tanks were everywhere! After many programmers poured through many logs they found that the AI had actually picked up a specific shape in clouds that it thought was a tank, basically a waste of money.

You have a (completely) learning AI and vs it against my fully scripted AI and mine will beat yours the first million times while also acting more like an adult human.

#4987803 I need help with version control software.

Posted by CRYP7IK on 07 October 2012 - 05:56 PM

Why did this not do what I was expecting--namely, combine his changes with mine? How should I/we proceed in the future to avoid this? Is there an option I should have set to avoid this?
grrr....later I'll ask how I can fix it....

I see this time and time again from beginner coders and lead coders alike. You don't want to and usually can't avoid merge conflicts and it isn't really that much of a big deal if you get them anyway.

To do a merge I go through this process:
  • Check my files (Or hunks) for changes not needed or unintended changes and reset them
  • Pull and merge
  • Fix any conflicts using a diff tool. (SourceTree on Mac shows differences and I just use that + monodevelop) I don't have a recommended for Windows
  • Commit \ push merge
Conflicts are not errors!

#4986984 Poll: There's a big piece of code in need of a rewrite, do you create a n...

Posted by CRYP7IK on 04 October 2012 - 07:53 PM

If it's really big I would probably create a branch specifically for that refactor job.

Then I would just do whatever I needed to refactor what needs to be refactored and merge the branch back in when I'm done.

I chose other, as I am doing copy-pasting but I am also editing the file (just in another branch). I always get a little bit anxious \ scared when I refactor large amounts of code, it always works out when I test though :P.

#4983496 No knowledge of programming, wish to create an android game without aforement...

Posted by CRYP7IK on 25 September 2012 - 01:36 AM


AAA Titles are not what is being discussed here.

GravutyPerseus1325 is not aiming for a AAA title or even for a title that anyone will play, so I am not sure why you even bring them up.

Your chances of even finishing a game using "game-maker"(as you put it) software is much higher than not. Let alone making a good one!

Hell! The engine you mentioned (Unreal) can create whole FPS games without any coding at all, just using simple visual triggers! Does that mean no-one should use it and that you could code something better in a quicker amount of time?

On Topic: Dragon Story is not a simple game and it would have cost the developers much more than $350 to make. I don't know of anything that allows social media integration without any coding or scripting at all so your chances of finding anything is slim. I would recommend just playing around with Game Maker free and make it for PC or Mac first just to test the waters. Creating a game is much hard than you think, especially of such a large scope.

#4938872 New to Game Programming, Sub: Creating RPG Skills

Posted by CRYP7IK on 09 May 2012 - 09:55 PM

I'd like to know how you guys would go about coding the effects of skills without just plan coding them in a massive list. Right now, I have a bunch of .txt files with skill names, stats, levels etc stored in them, and I get that info via file i/o.

So I am assuming a skill is, more like an action or an ability. For example, Fly-kick (Melee) or Fireball (Projectile) but could also be passive, like Health Regeneration V.

This can get very, very complicated but if you want to keep the way you were doing it where skills are defined in some file: You can have a class for each type of skill, Projectile, Melee, Passive, AoE all of which inherit from a base Skill class with a bool update function. Now a Projectile would just move in a direction or at a target (set in the data) and do damage, damage type and whatnot and maybe even set off another skill etc.


class Skill
	virtual bool Update(deltaTime);
	virtual void OnCollision(collisionData)
	void ActivateSkill() // Put the skill into the skill manager or something...
	Entity* user;
	string Name;
	string Description;
	Skill* skillToUpgradeTo;


class Projectile : public Skill
	bool usesTarget;
	Image* image;
	bool usesEntityDirection;
	Entity* target;
	unsigned int Speed;
	Skill* skillToActivateAtEnd;
	bool Update(deltaTime);
	vector3 Direction;

Then the data could be for Fireball:

Type: Projectile
Name: Fireball
Description: Shoots a flaming ball of fire at your foes.
Target: 0
usesEntityDirection: 1
Image: "media\images\fireball.png"
speed: 3
skill to upgrade to: Super Fireball
skill to activate at end: Explosion

So, you would have some SkillLibrary class that would read the file for all the skills and give them all their data. You would need a switch on all the different types. (For example you would need to switch the type and if it was projectile you would create a projectile object and read the data from file as if it was a projectile object.

Now, the way I would actually do it is have an Action class that can be extended in scripts which could then create actions that do whatever the hell they want, although that system above could do almost anything it would be convoluted and weird.

Obviously this is highly dependant on your collision system and what actual abilities you want and all that kind of jazz, if you give more info on what game you are making and what you want to do with the skills that would make it easier to help you. (So I assume this is turn based? You could remove direction and uses entity direction in that case because you know they would always require a target)

#4901963 Issues Setting up SDL for Dev C++ ver 5.1

Posted by CRYP7IK on 12 January 2012 - 05:08 AM

Don't use Dev-C++: http://clicktobegin.net/programming/why-you-shouldnt-use-dev-c/.

Use http://www.codeblocks.org/ or http://www.microsoft...ual-cpp-express.

When you get one of them follow one of these tutorials:




#4901597 Upgrading, One Button or Many?

Posted by CRYP7IK on 11 January 2012 - 03:32 AM

Thanks everyone for all your responses, I read most of them as they came but didn't have time to properly respond to them.

I decided to do what most of you said, and that is to keep it simple with a single upgrade button for each weapon. So they basically have to decide which enemies will die faster in the next round (So any enemy they kind of had trouble with they could upgrade for the next round).

Also jbadams, I like your interest idea and implemented it, it works well and is a good risk VS reward but needs a bit of tweaking!

I did like your idea ImmoralAtheist but the extra amount of art assets and code required would probably break our deadline.

And for what you said just above Olof I completely agree, pretty much everyone I have worked with are astounded at the fact that people don't intuitively know how to play their game, they then blame the users even though it's not the users fault.

Thanks again!