Jump to content

  • Log In with Google      Sign In   
  • Create Account

We need your help!

We need 7 developers from Canada and 18 more from Australia to help us complete a research survey.

Support our site by taking a quick sponsored survey and win a chance at a $50 Amazon gift card. Click here to get started!

Servant of the Lord

Member Since 24 Sep 2005
Offline Last Active Yesterday, 09:46 PM

#5164497 Seeking advice about protecting my ideas/IP

Posted by Servant of the Lord on 02 July 2014 - 11:58 PM

Tom's responses (even the yes/no ones) seem to fit the questions very accurately and do seem to answer your posted questions. That's one of the benefits of conversations, though: You can ask follow-up questions to hone in on the details you are looking for, if the answers he gave didn't resolve all the questions in your mind. 


Do you not understand the answers, do you simply not like the answers (even if they are true), or do you have additional questions?


With legal questions, it's very case-by-case-specific, and is often a question of not whether you should or should not do something, but at what point you should or should not take a specific action. Very very blurry grey lines that makes it so you have to make informed decisions, instead of just following checklists of "do's" and "don'ts".


For example, the amount of time and money you should invest in legal precautions for this project would depend how how valuable this project is, and how serious this project's legal risks are.




I'm very protective of my ideas and IP, as most writers and artists would be. I've put years of my life into it. So, I'm very concerned about releasing games (some of which may be free) and having my ideas/IP stolen. 


I will say this: People steal ideas. It can't be avoided. But they can't steal your creativity. Your ability to produce ideas of higher quality and greater originality than the knockoffs, and your ability to produce more ideas when the previous ideas get stolen.


I'm not saying don't fight back when you notice something being stolen, but I am saying don't get so locked up in fear that one specific idea might get stolen that you forget that you can make more ideas. No single one of your creations should be so valuable to you that you tie up your own worth with the value of that one idea. Even if previous ideas get stolen, each new project you work on should (ideally, but perhaps not always) be better and higher quality than the previous ones. If companies or individuals are going to be following you to steal your works and try to knock off your creations, let them fight in the past (and let your lawyers fight with them, when you are successful enough to afford lawyers) as you march onward with each new bigger and better project.


Knockoff products can't be made overnight - it takes at least half a year and often more to make a game, so that gives your product not only a sizable headstart in the market, they get bad PR for being knockoffs (or else are in a market you're not even currently serving! China, for example), and the fastest they get their knockoff out there, the worst quality it actually is, further positioning your product as the higher-quality alternative.

#5164489 How do you get ideas for new games?

Posted by Servant of the Lord on 02 July 2014 - 11:15 PM

I can't force myself to have ideas - I can only put enough inspiration infront of my mind that ideas are easier to form. I don't mean that creativity is some magical ability only Level 52 Arcane Game Designers have - what I mean is ideas are byproducts of consumption and relaxation. Consume books, movies, music - have conversations about baking or house construction, play with legos. Relax your mind from trying to come up with ideas, by occupying your mind with some menial task you don't have to think consciously about - taking a shower, going for a walk, or something else that doesn't require your mind to be focused on it.
This gives you pieces of ideas. No game, story, movie, pops fully formed into someone's head. It starts off as ideas that are built up, fall apart, reassembled, and sanded back down. You might get some ideas now that you won't use for years but that might suddenly pop into your head when you need them.
I'm sure you probably have tiny pieces of ideas that aren't fully formed. Pick one, and start building off that idea. That core 'seed' idea might not even make it into the final product - but it serves a purpose of being a makeshift platform you can build ideas on - and you build temporary scaffolding on it, then you start to see how it might fit together as a more cohesive whole, and you start to see what parts of the ideas don't actually fit that idea of a cohesive whole you thought of, and you start to have better ideas that do fit the cohesive whole now that you see empty holes that can be filled in.
Ideas don't have to be gameplay gimmicks that many indie games are centered around. They can be characters, or worlds, or items, or whatever. You have pieces of ideas - grab one, and build on it, and as you work, your mess of a temporary structure can continually change as you get ideas and refine the cohesive whole.
Example thought process:



See how, by taking tiny 'seed' ideas - some of which might later be discarded as the idea continues to take shape. It makes sense that the sword can speak, but really, why does it need an eye to see? The eye might get axed. And why a sword? Why not an amulet? Why an amulet?


By taking 'seed' ideas, and just building almost without direction, you then later get your bearing as ideas start flowing more freely, and then can hack the cluster of ideas back into shape, adding, removing, and refining.


Further, when stuck, ask questions. Why a sword? How did a servant boy even get near the object? Surely the king would've locked the object someplace where the object wouldn't tell the information to someone who isn't the king. But now we have such a structure of ideas already in existence, we can build in many directions. We can handwave away the servant boy, make an arbitrary choice of what kind of object the grand advisor was turned into (a parrot? an amulet? a ring the king kept on his finger but that slipped itself off (rather The Hobbit-like) unnoticed?). Now, that the ideas have started to flow, we have alot more to work with.


1) Take seed ideas, build off them, discard the original seeds later if needed. This helps with the flow of ideas.

2) When stuck, ask questions. Who, What, When, Where, and How? This helps with the flow of ideas.

3) Be inspired by existing works. I unintentionally was inspired by Arabian Nights + Aladdin for the world, Jane Austen and Portal 2 for the character interaction, potentially The Hobbit, and who knows how much other things. Choices I make are partially inspired by what I've already consumed, and further, the choices I intentionally avoid making (No, the sword isn't the king trying to get his throne back, too cliched) are also inspired by what I've consumed.


Consume, question, and create. And relax. Don't force it.



#5164371 Speed of fleets

Posted by Servant of the Lord on 02 July 2014 - 12:49 PM


Make entire fleets move at their combined averaged speed.


Alternatively, have the entire fleet move at 0.6 of the difference between the fastest and slowest ship. If the slowest ship moves at 7 speed-units, and the fastest moves at 20 speed units, then the entire fleet together moves at (7 + ((20 - 7) * 0.6)) = 15 speed units.


While I do think it's an elegant way to prevent fleets from moving very slowly, I don't think this would be very realistic (as far as space travel of this sort is currently realistic). The slowest ship can't move faster than its maximum speed, can it? Unless it has an overdrive of some sort, but then I'd apply some damage while this is active to show extra wear and tear.


Realism is enjoyable and definitely worth pursuing, but when it conflicts with enjoyable gameplay, sometimes it has to take a backseat. smile.png

Weaker guns not doing much damage against a more powerful shield players can tolerate, but slow moving ships gets irritating really fast. dry.png


The game can either just be silent about why the slow ships are now moving faster than normal, hoping most players don't notice (or if they do notice, they'll just ignore it and continue playing), or the game can create an in-game explanation for it.


Possible explanation: To move quickly through space, the ships warp space around them. The better they can warp space, the faster they go. The warped space is enough to cover the entire fleet. Therefore, either the entire fleet uses the fastest ship's space-warping drive (i.e. use speed of fastest ship), or perhaps it takes more energy to make warped space cover more ships, so the ships have to combine their space-warping-engines and you use either the average speed or a formula similar to what I had above.


Here's an alternative method of making old ships move faster: Use the same thrusters in every ship, regardless of ship level. But make speed be based on the fuel you provide your ships. As the player researches better fuel, every ship gets that fuel and can move faster.

But how does ships way out in space change their fuel? Answer: Magic. laugh.png


Or you can make 'fuel' part of the gameplay, so ships routinely have to return to your planets to refuel on a regular basis anyway, so they get the upgraded fuel the next time they return to port to gas up. (Note: Fuel doesn't have to be a liquid, it can be bronze, platinum, uranium, and so on, that you convert to pure energy to fly your Skylark spaceship using the 'X' substance you found while... </obscure sci-fi reference>).


[Edit:] Going off of Orymus3's post above mine, you can then have your spaceships have different storage capacities for fuel, to stay out in space longer. An entire fleet's storage gets averaged, because the ships can just transfer their fuel from one ship to another while in space (this should happen automatically without player micro-management). smile.png

#5164323 Speed of fleets

Posted by Servant of the Lord on 02 July 2014 - 08:52 AM

Make entire fleets move at their combined averaged speed.


Alternatively, have the entire fleet move at 0.6 of the difference between the fastest and slowest ship. If the slowest ship moves at 7 speed-units, and the fastest moves at 20 speed units, then the entire fleet together moves at (7 + ((20 - 7) * 0.6)) = 15 speed units.

#5164191 What are people using for a good GUI API with a layout editor...

Posted by Servant of the Lord on 01 July 2014 - 07:28 PM

Oops, thought you said you wanted a "SFML/OpenGL" UI library. wacko.png

#5164087 What are people using for a good GUI API with a layout editor...

Posted by Servant of the Lord on 01 July 2014 - 12:47 PM

I haven't tried it myself, but have you seen SFGUI? It's a GUI with widget layouts designed specifically for SFML.

#5164080 Names for a "Death Star"

Posted by Servant of the Lord on 01 July 2014 - 12:23 PM

A space empire, you build one or more (but usually just one) super-something-combat-gigantic-vessel things.


The Empire built two death stars. wink.png


These class of objects are typically called Megastructures - just astro-engineered ones. I'd give them individual unique names just like boats, colonies, planets, and cities have names.


Because Megastructures take so much work to build, it's unlikely there'd be many identical-planned megastructures. How many identical skyscrapers do we have? Few, if any.

Even large boats are usually have only two or three "sister ships", and even then may have modifications unique to each one because new technology gets invented while they are constructed and each one takes so long to build. Boats do have "classifications" to help military quickly group ships mentally into different classes of firepower or different cargo-tonnage. These classes are usually named after one of the first ships (the "lead ship") of that new class. We have Nimitz-class aircraft carriers, and they are named after the Nimitz which was the first of that class.


Rather, each megastructures would be extremely unique and vary greatly in size, shape, blueprints, and so on. The first of a specific size would be given some unique name (i.e. the MS Wiggins), and then later ones of similar size would be called after the original's class (i.e. the MS Monolith might be a Wiggins-class dyson sphere).

#5163948 How to greatly reduce fleet micromanagement?

Posted by Servant of the Lord on 30 June 2014 - 05:28 PM

Many RTS games let you tell your production buildings where to automatically make the produced units travel to when they spawn. This is usually done per-building.


However, with battles fought on many fronts, you should be able to place global "rally points". Instead of setting locations per-building, you set multiple rally points and buildings (or spaceyards in your game) would send their produced units to the nearest rally point (even if it's across multiple parsecs of space). You should be able to manually override it for buildings, telling a specific building to send their units to a different rallypoint even if there are nearer ones, but in general as your "frontlines" of war move, you (the player) can just shift your various rally points around - say, a half dozen of them for different lines of war.


I generally like the idea of fleets being composed of ships in various states of advancement and various states of age and dilapidation. However, if it decreases the enjoyablillity in one area of the game (some ships slowing down entire fleets), work around that flaw to make the game enjoyable even if you have to do some handwaving (make entire fleets move at their combined averaged speed, or at 0.75 of the difference between the fastest and slowest ship).

#5163924 How to make ww2 naval combat fun?

Posted by Servant of the Lord on 30 June 2014 - 02:50 PM

Heavy fog - shooting at ships that float in and out of view.


Ship sizes - Fighting your three or four ships of different sizes against three or four enemy ships of different sizes. Larger ships have more guns, shooting more projectiles with each barrage.


Projectiles hitting the back end of ships could do more damage (maybe x2.5) - adds an additional level of strategy, rearranging ships to try to flank enemies. Projectiles hitting front of ship could do less damage (unrealistic, but you could pretend they have extra armor at the front) - maybe x0.5 damage.


I like the idea of the rockets. In addition, you could also have special rockets that catch the decks on fire and burn heavily over time.


You could also add greek fire, and have one of your ships launch forward a line/trail of flames that float on top of the water and hurt any ship that go across it.

You could lay down floating mines (more in line with WW2, unlike greek fire).


You could do signal warfare - jamming their radio signals so they can't see you on the radar, or them jamming your signals so you can't see them - you'd have to find and destroy the ship that is the source of the jamming - that one ship would be very very apparent on the radar, but all their others would fade out (maybe only leaving greyed out points indicating their last known location).


Definitely add planes, because planes were one of the primary sources of ship-to-ship warfare in WW2.

#5163550 Need more than 1 value to unpack?

Posted by Servant of the Lord on 28 June 2014 - 07:54 PM

The black window with the white text is called the 'DOS Prompt' the 'DOS Window' or the 'Command Prompt' or 'Command Window'. You use it alot in programming.


In the Command Prompt window (the black window with the white text), make sure you are executing within the correct folder. You can see what folder you are 'in' (i.e executing within), because the command prompt tells you what folder it is running inside.


It shows it right here, where the > arrow is. I highlighted the text in yellow here: (normally it is just white text)

The command prompt executes (i.e. 'runs') programs. You type in the name of the program, followed by a space, followed by zero or more 'arguments'.


CD is one such program. It stands for 'change directory'. 'directory' is another word for 'folder'. The 'cd' program changes what folder the command prompt is currently executing within. This is called the 'current working directory'.


To use CD, you must type in its name, followed by the arguments you want to give it. In your current situation, you want to use CD to change your directory to the directory that your python script is in.


So, in the command prompt, type: cd /D "E:\f\mohamed\New folder (5)\"

That'll execute the 'cd' program, and give it the /D argument and the folderpath argument you want to move to.


You'll know if it worked, because it'd change the 'current working directory' to the path you specified.




Once your current working directory is the same directory (i.e. 'folder') that has your python script in it, you can tell the 'python' program to run your .py script.


Do this by typing, in the command prompt, the name of the python program (called 'python') and passing it several arguments. The first argument would be the name of your script. The other arguments will be passed into your script so your script can handle it.


The command you type is:

python test11.py argument1 argTwo arg3


You type it into the command prompt, just like you do with the 'CD' program.



#5163536 Need more than 1 value to unpack?

Posted by Servant of the Lord on 28 June 2014 - 06:15 PM

Type: python test11.py aarvark purple mongoose 


The last three words can be anything you want (because they'll be passed to your script, and your script will have to handle them), as long as there is just a single space between each one and as long as you keep to letters and numbers, and avoid fancy symbols (some symbols have special meanings).

#5163529 Need more than 1 value to unpack?

Posted by Servant of the Lord on 28 June 2014 - 05:41 PM

You first need to type cd /D "E:\f\mohamed\New folder (5)\" to change to the correct folder.


The /D let's the 'cd' command know that it has permission to switch drives to the 'E:' drive.

You'll know if it works, because the C:\Users\________ > at the front of each line would turn into the path you typed in.



Then, since you are at the current folder of your .py script, you can execute your script by typing: python test11.py


However, you want to also pass in parameters, so instead of just typing "python test11.py", type python test11.py aarvark purple mongoose instead. The last three words can be anything you want (because they'll be passed to your script, and your script will have to handle them), as long as there is just a single space between each one and as long as you keep to letters and numbers, and avoid fancy symbols (some symbols have special meanings).

#5163279 Vector Efficiency question

Posted by Servant of the Lord on 27 June 2014 - 01:27 PM

If you must have string-lookups, then use std::unordered_map.  By using std::unordered_map, you are saying, "I don't care whether you preserve the order I add elements to the map, you can store them however you want, just make them as fast as possible."


However, string comparisons are (relatively) slow. If you're only gonna have 10000 or so entities, it'd probably be fine, but strings have other problems: How do you handle case sensitivity? std::strings, and thus also strings in maps, are case-sensitive by default, so "Bob" is not the same as "bob" or "BOB". You can normalize your names before using them to look up elements, but then that's another issue of unnecessary slowness. Also, what if there is more than one enemy named "skeleton" - you'll have to detect that, and then create "skeleton_01", "skeleton_02", and so on. For what purpose?


If you want better efficiency, use consecutive integer keys (e.g. 0, 1, 2, 3, etc...) with std::vector, doing myVector[index].


When you add an entity, do something like this:

typedef size_t EntityID;

EntityID MyClass::AddEntity(const Entity &entity)
    EntityID entityID = myVector.size();

    return entityID;

Then you can go:

EntityID entityID = myClass.AddEntity(Entity(stuff));

And you save your entityID for later lookups for things like collisions and so on.

#5163178 Congratulations, you died! :)

Posted by Servant of the Lord on 27 June 2014 - 02:00 AM

While not the same as 'dying', in Dragon Quest Monsters: Joker 2 (Nintendo 3DS), you capture pokemon-like creatures to do battle on your behalf. Once you level two monsters to above level 10, you can merge/breed/splice/whatever the two of them together - this removes both of them from the game (for unexplained reasons) and their offspring gets to keep 1/4th of the combined total of the parents' stats, and your choice of three different inherited skill trees (linear skill lines) from the parents (with 1/4th of the skill points still in that tree).



Stats - The new creature starts off with 1/4th or more of the stats of the old creatures, but is still only level 1 and can rapidly be power-leveled up and get more stats, creating a more powerful creature by the time it gets around its parents' old levels.

Skill selections - With the parents, you only got whatever skills the creatures had when you caught them in the wild - you didn't have any choice about it. But by selectively breeding and then selectively choosing what skill trees to inherit, you can give creatures combinations of skill trees that are much more beneficial.

Upgraded skill trees - Skill trees (again, linear skill lines, so not really 'trees' at all) can be leveled up up to N times, depending on the tree. When maxed out, when the monster is bred, the offspring often gets the choice the old skill tree (Now at 1/4th the level of what it used to be) or a new, upgraded, skill tree (starting at level 0) that is the enhanced version of the old tree. Often the new skill trees have a even higher max level than before.


For example, one such "skill tree" I had on some of my creatures was "Strength Upgrades". At 5 points into this tree, my creature got an innate +3 strength apart from his regular stats. At 10 points in the tree, he got an innate +10 HP. 15 points in the tree, he got another 3 points of strength, and so on. It maxed out at level 50.

If I maxed it out, and bred the creature, his offspring had the choice of inheriting three trees from any of the two parents' trees, he had the option of inheriting "Strength Upgrades", and/or "Strength Upgrades Lvl 2". Strength Upgrades Lvl 2 gives you +5 strength (instead of +3), +10 health, +5 strength, +10 health, etc..., and maxes out at level 75 instead of 50.

So the child creature would have even better skill trees, and some degree of choice in skill trees. If I wanted to really pump out the creature, he could inherit both Lvl 1 and Lvl 2 of the "Strength Upgrades" skill trees, and both trees would coexist in him as separate (but complementary) trees.


The game gets you in the habit of doing this frequently - getting rid of your old creatures and using them to selectively breed new, more powerful, creatures that you'd have to then level up from scratch.

#5163022 What truly makes an enemy/boss hard to beat and be wary of?

Posted by Servant of the Lord on 26 June 2014 - 09:46 AM

Make sure the boss has a very powerful attack that almost, but not quite, kills you in one hit, but make it capable of being dodged fairly easily, but not effortlessly. Make it really explosively-looking and flashy, and give it an extremely cool sound effect. Make the boss do some easily discernable, flashy, and cool-sounding charge up before using it. It has to be fair, not cheap. The boss needs to be powerful and feared within immersion - but you don't want your game to be despised and break immersion by players thinking the boss or the developers are cheating.


Because of that, players will be trying to fight the boss, all the while thinking, "Hope the boss isn't about to... *boss starts charging up* ohdangohdangohdang here he goes... *dodges attack* Phew! Just barely survived..." - and then that line of thought repeats every few minutes during the battle - have the player go through cyclic high points of intense concentration and then intense relief. It'll make them remember the fight. biggrin.png