1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Development/Mechanics Ideas Thread

Discussion in 'Nerd Out Zone' started by Gingy, Oct 20, 2015.

  1. Potatocat

    Potatocat Back Into Space

    • Member
    Maybe making the areas of the screen, where users look most (on average), more detailed, and other areas of the screen lower quality?
    Potatocat, Jan 19, 2016
    Last edited by Potatocat; at Jan 19, 2016
  2. NeonSturm

    NeonSturm Back Into Space

    • Member
    Interesting too.
    You could archive a similar effect by subtracting the parts hidden by menu. Quite sometimes I would sacrifice transparency at any time for a menu which increases fps significantly.

    Example: Too often, SpringRTS's customable interfaces has hidden exactly that part I wanted to see because you couldn't define a limited area for the rendering output. I am a greater fan of Earth2150 interface than of Earth2160 because of that reason too.
  3. Potatocat

    Potatocat Back Into Space

    • Member
    But imagine the rebuffer lag when closing the menu! Switching into gear like that, there are bound to be some consequences.
    Potatocat, Jan 19, 2016
    Last edited by Potatocat; at Jan 19, 2016
  4. NeonSturm

    NeonSturm Back Into Space

    • Member
    That is what I liked on Earth2150. The bottom and top menu always had the same size (not counting dialogues). The right was just sometimes there, but I maybe the view-port just gets re-sized when it's open.
  5. Potatocat

    Potatocat Back Into Space

    • Member
    It probably won't matter, actually. In fact, maybe the performance adjustments shouldn't be done in rendering, but instead in a sub-layer like where the more foundational computations are done. What takes up the most memory is probably going to be region and voxel data, next to that, heavy comps like physics or loops. I suggest for fast loading of voxel data to only put surface voxels into memory, then load other region data as necessary. As for physics, have fine detailed collisions up close, but everything far away can have less detailed, macro-dynamic collisions. As for loops, when coding, try to integrate them all into one block, unless otherwise necessary. That way, the thread doesn't use as much memory for each separate loop, and it can keep going on the same loop without as much refresh each cycle. One more thing you could do is about computations that use more processing power, such as roots or dividing. These eat up precious CPU cycles, and it's best to use inverse workarounds rather than tackle the computations head on. Exs: a^2 + b^2 = c^2 , the distance formula. Rather than comparing "C" to a range value, instead, square the range, then compare it to c^2 which you already have. As for division, this process takes more CPU time than multiplication, so try to do division at the very end of your computations, using them to compute only your "finished product".
    Potatocat, Jan 19, 2016
    Last edited by Potatocat; at Jan 19, 2016
  6. NeonSturm

    NeonSturm Back Into Space

    • Member
    This is all common knowledge @Potatocat But why should we not try to optimize something that is optimize-able (even if it's "just" rendering)?
    Physics such as explosions are done on the server where the individual-player's hardware doesn't matter much.

    When physics are calculated per 2x2x2 blocks, it's 8x faster. Theoretically. Perhaps it's the best to calculate changes when you load a chunk or use it for visual or functional requests. I mean if there are many tiny explosion and then a big one covering the tiny, it's probably better to just compute the one big explosion.
    Matter/atoms shouldn't vanish after all - even with antimatter not that much (1 ton antimatter -a car- would heat earth atmosphere by a few degree, after burning a locally and growing area).
    So Just assume weight stays the same and count how deep the hole is if you impact something on even land.
    Gingy and Potatocat like this.
  7. Potatocat

    Potatocat Back Into Space

    • Member
    WOW I JUST GOT THAT that is genius!
    NeonSturm likes this.
  8. Gingy

    Gingy Back Into Space

    • Member
    I remembered that this thread exists, and got an idea for a mechanic that was inspired by Fallout 4. Odds are, those reading are probably know about the controversy behind the voiced protagonist in that game. Personally, I think the idea is good, but the execution was bad. I think part of the reason is that the character's voice actor doesn't work with play styles that, frankly, involve your character being a dick. There's a whole slew of other reasons the execution was bad, but those are beyond the point.

    The point I'm trying to take away from this is I got the idea to have your character or the NPCs in a game have different dialogue for each scenario based on the actions in game. An example for this idea might be if you're faced with a situation where you have the option to either kill or spare an opponent. If you spent the entire game practically playing a pacifist, but decide you want them to die, the dialogue could be your character lamenting the decision and hesitating before actually doing it. If you played a dick for the entire game and chose a bunch of negative dialogue options, your character could say something really cold before pulling the trigger, swinging the sword, of whatever method fits the context.

    It'd be more difficult to implement this particular idea, but you could also either play someone who can't shut up, or the stoic type and not say anything while doing these things. You could ramble on for five minutes before killing said guy, or you could say nothing as you spare them and watch as the silence eats away at their sanity.
  9. NeonSturm

    NeonSturm Back Into Space

    • Member
    @Gingy that scratches on the topic "Artificial Intelligence".

    The problem with it I see is a bit apparent in Endless-Sky (a 2D space game on github and over steam). Soon, you have to use labels for conditions such as "MissionX 1a" and "MissionX 2c".
    Maybe it's not apparent to everyone, but these labels have an author-defined linking behaviour (the only entries which can interact with it are listed or reference that label with text inside itself).

    This leads to a lot of explicit definitions of "connections" between events and labels which cover variables. Labels such as "MissionX 1a" or "Angry Level1 active" which have many siblings used by other missions or mission steps. It's a path into chaos.

    If everything is defined by [min, mid, max], for example [-1, 0, +1] linear or [0, 4, 16] exponential, a lot of problems appear:
    • Set Level to 50 or greater, while this event is active. Multiple accepted Quests mess it up (for example highest minimum > lowest maximum)
    • Set Level to 50 or greater, while this event is active. The order of accepted Quests mess it up (Get peace during a war mission to get snipe a well-protected mission goal)
    • Level is -100 (negative) to +100 (positive) but elsewhere it's [-1 to +2] or [1 to 2] with floating point numbers. "49.9325 >= 50" greets you!
    • Gaussian normal distribution, linear, exponential, logarithmic? How are they mixed?
    • Different numbers of low and high peaks in mixed graphs.
    • Hierarchical order of graph mixings.
    How would you solve this issue?:
    Do no complicated math depending on if you(r character) knows the truth form about "MissionY" because of a side-mission/time-jump/… or if he had a "Angry Level -100" before rather than the expected "Angry Level 10…100" (for example because he has a StarTrek:Borg-Chip which suppresses anger (or "insert any other reason").

    To FIX all these problems, there needs to be a true AI which uses common-sense and common-knowledge OR pre-chosen and boring old plain finite-state-machines which take long time to create perfectly individually.
    Common knowledge needs a large database, but it can be expanded while adding quests to save time on further quests and keep consistency.
    Common sense could (perhaps) be implemented by using a path-finding algorithm in a network of symbols which returns the nearest symbols and a likely path between question and answer, but there is a lot of common sense we expect which humans need many years to develope without a limiting interface such as keyboards between thought and memory.
  10. Sevio

    Sevio Back Into Space

    • Member
    I'd love to see a game that combines the best aspects of several games:
    • Modded technical minecraft, when it is a cohesive whole.
    • Vehicle building system that starts off with simple cars, boats and planes but also covers early and modern day rocketry up to balanced FTL travel, keeps a role for rockets to synchronize up with the destination before/after using FTL travel.
    • The freedom of exploring a solar system (or perhaps a procedural universe) with your vehicles like in Kerbal Space Program.
    • Mass matters: The rocket equation would be all-important for early spacecraft, just as it is in KSP. Every item you take with you on a spaceship makes a difference in how big of a rocket you need to launch it. At higher tech levels you would get the ability to go faster between planets or solar systems, but the ships you build should still be limited in mass or energy expenditure depending on how big and powerful their high tech drives are!
    • Survival gameplay that will change with your tech level but doesn't become obsolete. More time to spend on other projects the higher you go though, to allow for more complex later tech levels.
    • Advanced base building that takes temperature and oxygen into account. On planets with inhospitable conditions, create and maintain bases with breathable air and a comfortable temperature!
    • Good decorative building options to make your base feel like a home.
    • Building settlements for NPCs. A reason to have these bases would not just be for yourself but so NPCs can live and work there and help you further your goals!
    • Terraforming: Not merely sculpting the landscape but also being able to add streams, lakes, grow trees and add flora/fauna to create a lush oasis of life where once there was nothing.
    • Terrain and player-built objects use the same underlying system. Allows for integrating natural or terraformed terrain into a building, or to create your own lush environment inside a bio-dome.
    I realize it's a lot to ask for and it kinda sounds a little bit like SoA, but with the upsurge in sci-fi space games that are coming out or being announced, maybe there will be one that can get close? :)
    Sevio, Aug 16, 2016
    Last edited by Sevio; at Aug 16, 2016
  11. NeonSturm

    NeonSturm Back Into Space

    • Member
    @Sevio construction in future will change a lot with nanotechnology and additive materials (3D-printing).
    The larger shape will become less and less limited in building steps while the microscopic properties of materials become more and more important.

    Not the heaviest material is the best, but the lightest and the one which is easiest to recycle but which still does what you need.

    You know diamonds are very resistant to kinetic damage? They are stable enough to contain vacuum against the outside air pressure!
    — maybe enough to create a better zeppelin without (ineffective) hot air, (burning) hydrogen or (expensive, dissipating) helium but vacuum which is lighter than hot air (smaller zeppelin), not burning and cheap to produce without limited supply.

    Other planets could have an atmosphere dense enough to make them viable.

    NeonSturm, Aug 16, 2016
    Last edited by NeonSturm; at Aug 16, 2016
    Gingy likes this.
  12. Gingy

    Gingy Back Into Space

    • Member
    To be fair, the example I used would be a ridiculously complicated way of handling things. I wonder how many of those issues would be resolved if it worked similar to karma levels and XP in RPGs. What I mean by that is have it be determined by a single variable that goes up and down depending on the decisions made during a specific quest. Obviously, even with that, there's only so much detail that can be added without exponentially increasing the workload for minuscule benefits. The min/max/neutral method you spoke about might not be a bad starting point. Ideally, I would want one in between min and neutral, and one between max and neutral, but I can't say for sure how plausible that would be.
    joppiesaus likes this.
  13. NeonSturm

    NeonSturm Back Into Space

    • Member
    This depends on your variables.
    Is the NPC attracted to you? (as friend, sexually, likes you, foreigner, etc)?
    Is the NPC angry/stressed/…? (his own current attitude, independent of above).​

    This raises 9 states in a 3x3 Matrix:
    1. positive conversation, positive mood
    2. positive conversation, neutral mood
    3. positive conversation, negative mood
    4. neutral conversation, positive mood
    Now you have to decide which cases to modify and which cases just share answers with others (which can reduce the number to maybe 4-5).
    1. pos conv - npc talks with interest into the topic
    2. neu conv - npc thinks more about you as conversation partner
    3. neg conv - npc tries to get rid of your conversation and tell you about why your position is bad
    The mood tells how easy it is to get into a positive neutral or negative conversation.
    Different topics can have different values.​

    Positive, Neutral, Negative may range from [-1 … -0.3, -0.3, +0.3, +0.3, +1],
    but might be altered for each character based on his personality and his prejudice about you.​
    NeonSturm, Aug 30, 2016
    Last edited by NeonSturm; at Aug 30, 2016
    Gingy likes this.
  14. joppiesaus

    joppiesaus Infamous Space-Octopus

    • Member
    How's this a 3x3 matrix and not just two floats?
  15. NeonSturm

    NeonSturm Back Into Space

    • Member
    Because you have 3 value-ranges in each float. 3 ranges * 3 ranges = 3*3.
    The value ranges are negative -1 to -0.3, neutral -0.3 to +0.3 and positive +0.3 to 1.​
    The first float is about the conversation (topic) and relationship to you and the second about the NPC's long-term mood apart from the current conversation.​
    NeonSturm, Aug 31, 2016
    Last edited by NeonSturm; at Aug 31, 2016
Similar Threads: Development/Mechanics Ideas
Forum Title Date
Nerd Out Zone comp specs ideas. May 19, 2015

Share This Page