Greetings, glorious testers!

Check out Alpha Two Announcements here to see the latest news on Alpha Two.
Check out general Announcements here to see the latest news on Ashes of Creation & Intrepid Studios.

To get the quickest updates regarding Alpha Two, connect your Discord and Intrepid accounts here.

Node Experiment

ShaladoorShaladoor Member, Alpha One, Alpha Two, Early Alpha Two
First Pass
ezgif-7-bb3b8943b17f.gif

ADDED 8/15/2020
ezgif-6-744c66e2a191.gif

THE ABOVE ARE JUST PICTURES, THEY DON'T CHANGE EACH TIME IT RESETS :)


Hello! I've been working on a rough model to experiment with nodes. The goal is to simply try and model their behavior and see how they develop and interact over time. The actual system in the game will be more complex than this, but models aren't meant to mimic perfectly, and even the simple system above can be used to learn quite a bit IMO.

A little info on the model:
The model runs through only 100 iterations. The graph on the left highlights parent/vassal relationships. The graph on the right is more of a heatmap, with special highlights on level 6 nodes so they're easy to spot. I could rerun the model several times and see strange and interesting results each time. For example, once there was a deadlands running through the middle that was mostly 0's and 1's until eventually was overtaken. Another iteration had a level 6 capital in the middle with a vassal system expanding 17 nodes.

I wish it was interactive in some way so people to rerun it and see different results, maybe allow them to play around with parameters, or maybe pick some "hot spots" on the map that start at level 2 or something. But alas, it is what it is for now.


Basic node info:
1. Nodes first become parents at level 4.
2. Nodes "capture" any surrounding nodes that aren't already "captured".
3. Nodes can't level up if any of the surrounding nodes are blocking them.
4. Nodes can be sieged starting at level 3.
5. Chances of sieges being successful are reduced with higher node level.

More advanced info:

Node XP:
1. Nodes generate XP each day. If they can level up, they do.
2. If any surrounding nodes are exactly 1 level higher, that's a "block" and prevents the node from leveling up.
3. There's a double check against the parent node, as the parent node can also "block" the node from leveling up.
4. If there's a parent node, XP earned past the target is given to the parent. If that parent is at cap, it continues to filter up to the next parent node.
5. XP thresholds for nodes level 4 and higher were set low in order to advance the systems more quickly.
6. There is some consideration for population density. The system checks the nodes level and the nodes around it to potentially increase the amount of XP earned in a day.

Node Sieges:
1. Each day, there is a chance for level 3 nodes and higher to be sieged. The odds of being sieged is fairly high in order to keep the system moving along.
2. 8/14/2020 : Added restraints so level 3 nodes are immune to sieges for the first 21 days after reaching level 3.
3. If a siege is successful, the node is reset to 0.
4. If a siege is unsuccessful, the node receives protection from being sieged again, equal to the amounts found in the wiki (20 days for a level 3, 30 days for a level 4, 40 days for a level 5, 50 days for a level 6).
5. Nodes that are part of a parent/vassal system receive increased defenses against successful sieges. Larger systems receive larger increases.

Node Destruction:
1. Nodes that are destroyed have their level set to 0 with 0 XP.
2. If a destroyed node had a parent, the node keeps that parent/vassal relationship.
3. If a destroyed node WAS a parent, that parent status is removed from all nodes it was the parent of, and those nodes are then "up for grabs".
4. When a node is "up for grabs", the system checks all surrounding nodes and itself. The "highest bidder" becomes the new parent, if parenthood is allowed.


I'm still up in the air whether I will continue developing this past this point. I could rerun the model every few days and post results that I find particularly interesting. Who knows! Let me know what you think, or if you see something I could improve on, or even special requests if I decide to spruce it up.

Thanks!

8/15/2020:
1. Added 21 days of siege immunity for nodes that reach level 3. Wiki says that higher nodes don't share this grace period, so I will also reset the immunity once they hit level 4, even if the node goes from 3 to 4 in less than 21 days and they don't use the full 21 day immunity.
2. Added extra XP to reaching node levels of 4, 5, and 6 in order to make it more realistic.
3. Added some details to the left, for funsies.

Comments

  • EradalEradal Member, Alpha Two, Early Alpha Two
    This is sick, man the work put in! Thanks for sharing.
    I was born in the Pyrian royal family of Eradal.


    https://Twitch.tv/Eradal
    https://Twitter.com/Eradal_

    OC9k.gif


  • TSGTSG Member, Alpha One, Alpha Two, Early Alpha Two
    Nice work! That gives a fantastic visual that I feel will help the community so much.
  • ShaladoorShaladoor Member, Alpha One, Alpha Two, Early Alpha Two
    Thanks! I realized I haven't posted a new graphic lately, I could run another simulation. I will say that I found new information that I need to incorporate.

    "A node siege may not be declared for 21 days following a node advancing to Village (stage 3). This does not apply to nodes at higher stages.[11]"

    My model does not grant that 21 day immunity. I also accelerated the rate at which nodes develop into level 4, 5, and 6, so that the nodes would populate more quickly and we could see better interactions.

    There are detailed world maps out there of Verra, but none that detail exactly where the nodes are. I would love to be able to see one, and then I could possibly overlay my nodes on top of the map. Then I could limit the neighbors of each node according to the real map, and we could see how thing grow after that.

    But again, wishes wishes :smile:
  • UlfUlf Member
    I like this, but im scared.

    Smart kids nowadays theory craft everything... at this pace, there will be a fair amount of tools for the game, not perfect, but adaptable when it does come out.

    And BAM..

    Nice work.. just don't break the game before it launches.
    Please...

    :)
    FOeRqtf.jpg
  • ShaladoorShaladoor Member, Alpha One, Alpha Two, Early Alpha Two
    Ulf wrote: »
    I like this, but im scared.

    Smart kids nowadays theory craft everything... at this pace, there will be a fair amount of tools for the game, not perfect, but adaptable when it does come out.

    And BAM..

    Nice work.. just don't break the game before it launches.
    Please...

    :)

    Thanks! I don't believe this would break it in any way, especially since all of the nodes are connected the way they are. The actual world of Verra is going to be separated and split up in a much more dynamic way.

    If I had more detailed info on where nodes were located in Verra, I really do think I could overlay my node system on top of it and then run the simulation again. I could also plant some seed values around starter areas (or spawn gates, or whatever they're called). I think that'd be pretty fun to mess around with.

    In the beginning, I think most servers will see their maps develop in a similar way. Nodes level 0, 1, and 2 simply can't be sieged. Level 3 nodes can't be sieged for 21 days after reaching level 3. So players won't even be able to see node sieges until A) Level 3 nodes see their 21 day immunity run out, or B) Nodes reach level 4 and no longer have immunity.

    But oh boy! Once sieges really come online, I think we might see servers go drastically different directions! And that makes me excited!
  • BardticBardtic Member, Alpha One, Alpha Two, Early Alpha Two
    Great work, sounds like we will be discussing this on today's Podcast! It is a super interesting model to use in theorycrafting.
    XWeKqaZ.png

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file