Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 25 Nov 2005
Offline Last Active Yesterday, 12:45 AM

#5307329 Apocalypse/ Collapse of Civilization

Posted by on 23 August 2016 - 01:58 AM

A survival RPG in which the player character's well-being depends on inventory and friendship with AI agents imposes a lot of disagreeable constraints on the "apocalypse":

  • The disaster must be fairly advanced, with the game set when society is already collapsed, after the interesting slow initial period in which people attempt to prepare and adapt with increasingly desperate measures (not catching the plague, escaping the enemy, containing the zombies, avoiding the war, etc.) but are not forced into a survival adventure.
    Things can go from bad to worse (for example, you might be reduced to hunt rabbits for food until you begin finding disgusting mutant ones) but not really from good to bad.
  • Most natural catastrophes aren't bad enough. A game about finding food, water and shelter for many days until rescue ships reach a tsunami-blasted island or until the first helicopters are able to fly into a burning city would be emotionally weak. A true collapse of civilization requires a global problem and a relatively long time to cook.
  • If civilization is over, shouldn't NPCs be hostile and self-interested? Can a friend be more useful than a slave?

#5304226 There's Too Much Space In Space (Cover/strategic Depth In Turn-Based 4X S...

Posted by on 05 August 2016 - 10:49 AM

Actually I would love to do a simultaneous movement system like it was used in Frozen Synapse for example, both for it's tactical possibilities and entertaining replays. ;)

The point of my suggestion (and others) is eliminating tactical movement in a boring "arena" of empty space and focusing instead on strategic movement around interesting and important places. Using large enough battlefields that contain interesting features is a valid but completely different approach.


There are many possibilities; for example, a technological setup that leads to building carefully designed fortresses and not fighting anywhere else could be

  • All ships have an instantaneous jump drive, cheap enough for private vehicles, escape pods, drones and missiles, etc. fast to use (a few seconds between jumps), and long range (at least a whole galaxy). 
  • The jump drive cannot be used around reasonably affordable emitters of special forcefields, that can cover whole planets with a handful of devices.
  • Planets, mining operations, space stations, spaceships themselves, sometimes even stars are protected against invasions by jump drive using this technology. Any attacker has to jump at a significant distance from their objective and use good old thrusters.to charge in. 
  • Everything of importance is surrounded by fixed fortifications.(including flying defense fleets). Keeping fleets in reserve to jump into the battlefield when an attack begins is usually too slow to be an effective strategy.
  • Ships can easily escape from battle by jumping to random places or back home. Very good defense systems are needed to turn hit and run assaults into hit, get hit and run.
  • Strategy would consist of keeping on top of the arms race, not leaving weak spots in fortresses, exploiting weaknesses in enemy fortresses, and choosing what deserves to be attacked or defended.

#5303752 Virtual Machines

Posted by on 03 August 2016 - 12:55 AM

Replace your computer and make the world a better place by destroying an Intel integrated graphics adapter. You deserve more than fighting with Intel OpenGL drivers.

#5303600 There's Too Much Space In Space (Cover/strategic Depth In Turn-Based 4X S...

Posted by on 02 August 2016 - 01:43 AM

While squad games like XCOM have a whole range of level architecture at their disposal to create choke points and personal cover, space combat seems a bit like group jousting to me - two parties line up at their respective side of the map and charge upon each other until one of them gets in shooting range.
This contains an assumption: that there are parties and that they have a chance to "line up" before a deliberate assault. Many other types of military interaction are possible, and with the appropriate choices of technology, and game scale and rules they can be prevalent. For example:


Fleets detect other fleets at very long range, well before weapons can be used. All you know of the enemy is a number of blips on the map, who knows where they are now. When fleets come into weapon range, shooting everything as efficiently as possible or sneaking away with stealth technology are the only reasonable options, and the latter can be impossible if unwanted; no need for tactical battle management.

Large forces try to surround small ones, small forces try to guess holes in the enemy battle lines, many campaigns have the purpose of merely steering the enemy away from where they want to go. In a typical turn-based 4X the usual kinds of locations would provide a sufficiently dense environment of objectives and obstacles (e.g. how could the enemy reach a certain planet before my forces?), strategic-scale fleet positioning is decisive, a simultaneous movement system is probably more intuitive.

#5302926 An Algorithm To Decide The Cost Of Skills/techniques.

Posted by on 28 July 2016 - 08:18 AM

One thing I thought was interesting about it was that powers increased exponentially while the costs increased linearly (kind of).
Such a cost scale is typical of roleplaying games, where decency and gamemaster control ensure diminishing returns for very high power levels (i.e. few battleships to lift, and only in appropriate cases).

In a videogame exploitation of cheaply obtained high power levels is more likely; exactly the sort of thing that should be playtested out of existence.

#5301474 Slavery, Include Or Not?

Posted by on 20 July 2016 - 01:38 AM

In a honest and realistic game about triangular trade, the player has to be able to trade slaves, and trading slaves has to be a major part of any good strategy (because there aren't enough other commodities that can be exported from Africa). This gives the players a choice between being evil in the game's fiction and losing the game.

If you don't want a grim/educational game in which slavery is a moral issue or a callous game in which slavery is appreciated as a smart business plan, the main way out of the dilemma is not making the game about ship trading after all, to avoid the use of slave trading as a move within the game. For instance:

  • The popular Puerto Rico boardgame is about developing an American colony with city facilities and plantations. The masses of slaves working at whatever the players build are completely implicit: "workers" in the game arrive by ship in small numbers, and represent (with some ambiguity) European emigrants and big shots.
  • A game about pirates robbing random ships would make the players not responsible for loading a particular ship with slaves, and rules about humanely and usefully recycling captured slaves as pirates, colonists etc. instead of selling them might be reasonable

#5299453 A Game Design Idea

Posted by on 07 July 2016 - 01:49 AM

Since you seem already aware that approaching a large project alone without experience is an irrationally optimistic endeavour, I'll just point out less fatal issues:

  • You might be underestimating your difficulties with English vocabulary and grammar (a time machine "conflicting" the future, a  "highly technology advanced world", a "loveable" future, "reciting" your idea, and so on): a potential major problem for in-game dialogue, for promotion of your game, and possibly for collaboration with others.
    You have studied English well enough to make your native language not obvious, but much remains to be acquired. Read more English books and articles.
  • You don't appear to be starting your game design process from the beginning.
    For example, you mention "a very detailed non-level-based system", but details and levels of what? I can guess you mean, in a RPG context where the "intelligent boy" is the protagonist, character details and the traditional design pattern of experience levels, but the mentioned premise of a time-traveling boy in trouble is suitable for many different types of game.
    Even worse, how can you tell you want character details and you don't want experience levels before you establish the design objectives of your game rules and at least a vague idea of what the player would do with them?

#5297556 Storing Signed Distance Fields

Posted by on 22 June 2016 - 03:24 AM

  • Do you need to combine elementary distance functions and render their sum, product etc. (for example, "metaballs" composed of several spheres)?
  • Do you really need to keep around SignedDistanceFunction objects, i.e. old brushstrokes? Forgetting them after applying an "edit" once would seem the most efficient course of action.
  • What do you need to store in your voxels, apart from the 1-byte material code?
  • How are you going to render your voxels? Their representation has to be suitable.

#5296301 Using Pathfinding Efficiently

Posted by on 13 June 2016 - 04:03 AM

I strongly recommend using a profiler; in particular, line_profiler, which works with Python 3 and gives line-by-line data. 

In this particular case a profiler would give you not only timing data, but also an immediate indication of abnormal counts of function calls. For example, in a map with enough impassable walls A* should expand only the nodes on the optimal path and the adjacent walls; if it expands more you have a bug

#5293510 Plane equation, + or - D

Posted by on 26 May 2016 - 12:51 AM

If you like dot products, Ax+By+Cz+D=0 corresponds to (A,B,C,D) dot (x,y,z,1)=0, consistent with the popular use of homogeneous coordinates with 4 by 4 transformation matrices and 3D points (x,y,z) conventionally represented as (x,y,z,1).

#5292593 how can neural network can be used in videogames

Posted by on 20 May 2016 - 03:08 AM

It's interesting to see that the consensus regarding NN in games seems to be changing.

Consensus is a strong word. The recent developments of neural network algorithms and computing power are extending the range of things a reasonably expensive NN is good at, but whether they overlap with the useful AI tasks needed in a certain game depends on the specific case.

#5292020 Difference Between 2D Images And Textures?

Posted by on 17 May 2016 - 02:50 AM

As assets, an "image" is usually meant to be displayed very faithfully and with little processing, like the mentioned sprites and prerendered backgrounds, while a "texture" is meant to be used for texture mapping and therefore displayed with extreme deformations and transformations and drastically affected by the positions of lights, objects and cameras.

#5290824 Is using the Factory or Builder pattern nessesary?

Posted by on 09 May 2016 - 10:45 AM


Yeah, that ^^ :D


Patterns should never be a play-book for writing code. Patterns are, well, patterns in code that just so happen to have been repeatedly reinvented, at which point people recognised the pattern and assigned a name to them to make discussion easier. You should look at lists of patterns more like a traveller's dictionary, and less like a cookbook.


A software engineer should strive to be comparable to a chef who writes cookbooks -- not a machine that only knows how to follow them.


Well put! :D


So, if I don't want to, I shouldn't use the factory/builder pattern "just cause"? Correct?  As stated above there should be a legitimate reason to implement it.


Many thanks for the reassurance.


In your humble opinion, is doing this:

International international = new International(id, firstname, lastname, documents);

Okay? Given that it accomplishes what I need, and I fully understand what it does.


It's not a matter of "wanting": without the proper context of many similar classes and of client code that is content with some abstract interface but somehow doesn't care about some details of their creations, writing a meaningful factory is impossible because you don't know.what the factory can abstract and hide compared to directly calling constructors.


(It goes without saying that in your example you have either only one class, ("International", which should be just "Client"), or completely unrelated ones without a real common interface, and there's no apparent way to create your objects without passing all data up front)

#5290757 Is using the Factory or Builder pattern nessesary?

Posted by on 09 May 2016 - 01:27 AM

If I understand correctly, you are complaining about Client having a list of documents which is not used in the case of domestic clients. If domestic clients having documents is something that doesn't make any sense, then I see your point. I would need to know more about the exact context in which this code is being written to make a judgement, but it seems to me it's more like "we don't currently have a use for the documents in the case of a domestic client", but that sounds like something that may change tomorrow.

It sounds like a boneheaded "optimization": crippling domestic clients by removing their container of documents allows the grand architects to maintain a simple implementation in addition to the general one that's known to be needed for international clients.


What's really different is what to do with different document types and clients having different combinations of documents, which might involve several document classes (not too likely, but possible in principle if documents have nothing in common) but not different client types (what documents they have is a detail of their state, and likely a mutable one: constraining clients with a class that can have no documents is obviously wrong).

#5290384 What does the "Most Constrained" heuristic mean?

Posted by on 06 May 2016 - 02:13 AM

It should be noted that it is an heuristic, and a cheap and dangerous one. There is no guarantee it approximates the optimal course of action, because it doesn't account for action utility.


In the example, if Mr Armor is a minor threat (e.g. he needs a free hand to fiddle with his phased force-field device and therefore he's armed with a little knife) Mr Rifle should shoot (like everyone else) the most dangerous enemies instead. After successively switching to generic enemies of decreasing priority, Mr Rifle should start shooting Mr Armor when it becomes more useful than contributing to killing another enemy faster. Meanwhile, the rest of the team switches from the last enemy they could attack to protecting and supporting Mr Rifle, since it's the most useful action they can perform.

On the other hand, if Mr Armor has a very high priority (e.g. he throws phased force-field grenades) everyone should target him; of course Mr Rifle figures out he can do it, while the rest of the team, knowing that they cannot attack Mr Armor, can either protect and support Mr Rifle if it's useful enough or attack generic targets; no need for a premature heuristic decision.