=== ANCHOR POEM ===
════════════════───────────────────────────────────────────────────────────────────
Code Name: Symbeline
----------------------------- gdd initial draft -------------------------------
1. introduction to fantasy (elevator pitches)
2. kickstarter demands
2. introduction to core gameplay loop
4. tenants and core values of the game design
3. introduction to game modes
5. introduction to technical requirements
6. breakdown of core gameplay loop
7. breakdown of game modes
8. breakdown of fantasy
9. breakdown of technical requirements
-------------------------- introduction to fantasy-----------------------------
Symbeline is a macro based strategy game and city-builder based around the
concept of indirect control. It's inspirations are Majesty the Fantasy Kingdom
Simulator (2000), Supreme Commander (2007), and Hearts of Iron IV (2016). It is
designed to appeal to fans of tabletop roleplaying games with it's focus on
dynamic worldbuilding and sandbox playstyle. The gameplay consists of multiple
playstyles depending on which aspects of the game appeal to the player, with
choices between an economic focus via the GUI, longterm planning and resource
allocation, or diplomacy and subterfuge a'la Ruinarch (2020).
---------------------------- kickstarter demands ------------------------------
1. prototype
2. gdd
3. estimates for character and environment art
4. estimates for music and sounds
5. estimates for engine development
6. estimates for community management
7. breakdown of mvp, ideal game state, and stretch goals
----------------------- introduction to core gameplay loop --------------------
1. management of lanes, both width and length
2. casting of spells and utilization of special boons
3. city building with placement, upgrades, and henchmen pathing routes
4. satisfying guild requirements of equipment, manpower, and special
resources by managing shipments and local income (UI commodity trading)
5. placement of generalized bounties
(think champion's guild from Majesty, not reward flags)
6. diplomacy with neutral, AI, or player controlled kingdoms. Capabilities
include pacts and treaties, projects, subterfuge, and tournaments. The
diplomacy system can be a stretch goal.
-------------------------- tenants and core values ----------------------------
1. always something to do, but nothing falls apart without your attention.
2. gameplay should be focused on macro rather than micro. Longterm planning
and strategic decision making are favored over tactics and skill.
3. defeat should feel avoidable until the last moment, and only as a result
of longterm continuous failures rather than short-term mistakes or being
blindsided by a cheesy tactic.
4. victory should be gained through exploiting weaknesses and by using
lateral thinking.
5. the careful balance of internal and external threats is essential.
6. rapid expansion leads to depletion of internal resources, while slowly
expanding can lead to a lack of options
7. the world should feel alive and reactive to your decisions.
8. your kingdom should feel alive and reactive to your decisions.
9. your heroes should feel alive and completely ignorant of your decisions.
10. there should always be opportunities for cooperation with your fellow
kingdoms.
11. the frontlines should feel peaceful outside of large battles.
12. everything is flexible and dependant on circumstance
13. there should be enough space on the map for multiple parties of heroes
to pass each other like ships in the night without engaging in combat.
It should feel like the real world, with canyons and valleys and rivers
and mountains - room for lairs and wild animals to roam.
14. monsters are always more dangerous than other humans.
15. the art style should be rooted in classic medieval fantasy.
16. equipment should feel either mass-produced (kingdom), organic (monsters),
ancient (lair treasure), or artisinal (enchanted).
17. heroes should feel campy, fun, and adventurous. Avoid dark, grim, and
fearful.
18. This game is a toy.
19. This toy should run on any modern computer.
20. This toy should encourage modding.
-------------------------- introduction to game modes -------------------------
1. singleplayer - single kingdom against an island of monsters and neutral
settlements. essentially the multiplayer game against
zero opponents.
2. singleplayer - multiple kingdoms against an island of monsters and
neutral settlements. One player controlled kingdom against
multiple AI controlled kingdoms.
3. singleplayer - scenarios, similar to MFKS
4. multiplayer - multiple kingdoms against an island of monsters and
neutral settlements. Essentially the singleplayer game
with networking added in.
5. multiplayer - co-op scenarios where multiple players play as the same
kingdom. A test of the core tenant "there's always
something to do"
6. multiplayer - co-op island invasion. Essentially the multiplayer game
with more than one player controlling a kingdom.
7. singleplayer - play in 3rd person as a hero in an AI kingdom. Mostly for
the novelty since the core gameplay loop is focused on
city-building. A test of the core tenant "nothing falls
apart without your attention"
1 is mvp. 2-6 are stretch goals in order of ascending difficulty. They
should build upon one another - the main steps are:
1. singleplayer island invasion (biggest step)
2. AI controlled kingdoms
3. scenarios
4. multiplayer (second biggest step)
5. cooperatively controlling the same kingdom
6. 3rd person perspective and character controller
------------------------ technical requirements -------------------------------
1. this game will be written in lua (with Fennel support) and using Raylib.
2. the prototype will be made with Godot using GDscript.
3. if the performance demands are too much for lua or the engine is out of
scope for the budget, Rust with the Bevy engine could be used.
4. the final product will include a custom 2d engine designed for large
scale maps with an isometric perspective and a data-first design.
5. the game should be as concurrent as possible, to support large numbers of
cpu cores and compute shaders.
6. the game will be data-driven, meaning the visual aspects are simply a
representation of the interactions of the underlying simulation, rather
than an intrinsic component of the computation.
7. Each "event" in the game (a character moves, a building is placed, a
monster spawns, etc) will send a message to the visual processing side of
the engine, which will present a representation to the user.
8. the map will be a hex grid with pointed-top hexagons. The visual
representation of the underlying data may be continuous (non-hex) but the
underlying data will be represented on a hexagonal grid.
9. there needs to be character portraits for each type of monster, henchmen,
and hero type. You should be able to recognize what attributes a hero
specializes in by their portrait. Mvp is 1 attribute, but more can be
a stretch goal.
10. Each building, upgrade, and equipment type needs an icon. Stretch goals
can be portraits.
11. each henchman, hero type, and monster needs 3 sprites for each action.
more actions may be added if budget allows, but mvp is movement and
attacking. Several additional sprites may be necessary, like dying,
standing still, gathering loot, socializing, or any others.
12. each building needs 4 sprites for the construction process and 4 for the
destruction process. Flame effects are stretch goals.
13. each building needs an animated sprite for when it is in use.
14. each lair needs a sprite and an icon.
15. each spell needs an icon and a spell effect sprite. Each projectile needs
a sprite.
16. a stretch goal would be differing sprites for each piece of equipment.
included with this would be engine work to allow for dynamic sprites.
17. each terrain type should have a ground material and sprites for doodads.
18. there needs to be several GUI menus. The precise number depends on
gameplay breakdown.
17. each hero type and henchman needs to have pithy and unique voice lines.
this is a stretch goal.
18. there should be music tracks for each part of the game - beginning,
middle, and end.
19. there should be sounds for each action that takes place in the game
including combat, UI interactions, and spellcasts.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═════════──────────────────────────────────────────────────────────────────┘
=== SIMILARITY RANKED ===
--- #1 notes/symbeline-2 ---
════════════════════════════════───────────────────────────────────────────────────
Code Name: Symbeline
----------------------------- gdd initial draft -------------------------------
1. introduction to fantasy (elevator pitches)
2. kickstarter demands
2. introduction to core gameplay loop
4. tenants and core values of the game design
3. introduction to game modes
5. introduction to technical requirements
6. breakdown of core gameplay loop
7. breakdown of game modes
8. breakdown of fantasy
9. breakdown of technical requirements
-------------------------- introduction to fantasy-----------------------------
Symbeline is a macro based strategy game and city-builder based around the
concept of indirect control. It's inspirations are Majesty the Fantasy Kingdom
Simulator (2000), Supreme Commander (2007), and Hearts of Iron IV (2016). It is
designed to appeal to fans of tabletop roleplaying games with it's focus on
dynamic worldbuilding and sandbox playstyle. The gameplay consists of multiple
playstyles depending on which aspects of the game appeal to the player, with
choices between an economic focus via the GUI, longterm planning and resource
allocation, or diplomacy and subterfuge a'la Ruinarch (2020).
---------------------------- kickstarter demands ------------------------------
1. prototype
2. gdd
3. estimates for character and environment art
4. estimates for music and sounds
5. estimates for engine development
6. estimates for community management
7. breakdown of mvp, ideal game state, and stretch goals
----------------------- introduction to core gameplay loop --------------------
1. management of lanes, both width and length
2. casting of spells and utilization of special boons
3. city building with placement, upgrades, and henchmen pathing routes
4. satisfying guild requirements of equipment, manpower, and special
resources by managing shipments and local income (UI commodity trading)
5. placement of generalized bounties
(think champion's guild from Majesty, not reward flags)
6. diplomacy with neutral, AI, or player controlled kingdoms. Capabilities
include pacts and treaties, projects, subterfuge, and tournaments. The
diplomacy system can be a stretch goal.
-------------------------- tenants and core values ----------------------------
1. always something to do, but nothing falls apart without your attention.
2. gameplay should be focused on macro rather than micro. Longterm planning
and strategic decision making are favored over tactics and skill.
3. defeat should feel avoidable until the last moment, and only as a result
of longterm continuous failures rather than short-term mistakes or being
blindsided by a cheesy tactic.
4. victory should be gained through exploiting weaknesses and by using
lateral thinking.
5. the careful balance of internal and external threats is essential.
6. rapid expansion leads to depletion of internal resources, while slowly
expanding can lead to a lack of options
7. the world should feel alive and reactive to your decisions.
8. your kingdom should feel alive and reactive to your decisions.
9. your heroes should feel alive and completely ignorant of your decisions.
10. there should always be opportunities for cooperation with your fellow
kingdoms.
11. the frontlines should feel peaceful outside of large battles.
12. everything is flexible and dependant on circumstance
13. there should be enough space on the map for multiple parties of heroes
to pass each other like ships in the night without engaging in combat.
It should feel like the real world, with canyons and valleys and rivers
and mountains - room for lairs and wild animals to roam.
14. monsters are always more dangerous than other humans.
15. the art style should be rooted in classic medieval fantasy.
16. equipment should feel either mass-produced (kingdom), organic (monsters),
ancient (lair treasure), or artisinal (enchanted).
17. heroes should feel campy, fun, and adventurous. Avoid dark, grim, and
fearful.
18. This game is a toy.
19. This toy should run on any modern computer.
20. This toy should encourage modding.
-------------------------- introduction to game modes -------------------------
1. singleplayer - single kingdom against an island of monsters and neutral
settlements. essentially the multiplayer game against
zero opponents.
2. singleplayer - multiple kingdoms against an island of monsters and
neutral settlements. One player controlled kingdom against
multiple AI controlled kingdoms.
3. singleplayer - scenarios, similar to MFKS
4. multiplayer - multiple kingdoms against an island of monsters and
neutral settlements. Essentially the singleplayer game
with networking added in.
5. multiplayer - co-op scenarios where multiple players play as the same
kingdom. A test of the core tenant "there's always
something to do"
6. multiplayer - co-op island invasion. Essentially the multiplayer game
with more than one player controlling a kingdom.
7. singleplayer - play in 3rd person as a hero in an AI kingdom. Mostly for
the novelty since the core gameplay loop is focused on
city-building. A test of the core tenant "nothing falls
apart without your attention"
1 is mvp. 2-6 are stretch goals in order of ascending difficulty. They
should build upon one another - the main steps are:
1. singleplayer island invasion (biggest step)
2. AI controlled kingdoms
3. scenarios
4. multiplayer (second biggest step)
5. cooperatively controlling the same kingdom
6. 3rd person perspective and character controller
------------------------ technical requirements -------------------------------
1. this game will be written in lua (with Fennel support) and using Raylib.
2. the prototype will be made with Godot using GDscript.
3. if the performance demands are too much for lua or the engine is out of
scope for the budget, Rust with the Bevy engine could be used.
4. the final product will include a custom 2d engine designed for large
scale maps with an isometric perspective and a data-first design.
5. the game should be as concurrent as possible, to support large numbers of
cpu cores and compute shaders.
6. the game will be data-driven, meaning the visual aspects are simply a
representation of the interactions of the underlying simulation, rather
than an intrinsic component of the computation.
7. Each "event" in the game (a character moves, a building is placed, a
monster spawns, etc) will send a message to the visual processing side of
the engine, which will present a representation to the user.
8. the map will be a hex grid with pointed-top hexagons. The visual
representation of the underlying data may be continuous (non-hex) but the
underlying data will be represented on a hexagonal grid.
9. there needs to be character portraits for each type of monster, henchmen,
and hero type. You should be able to recognize what attributes a hero
specializes in by their portrait. Mvp is 1 attribute, but more can be
a stretch goal.
10. Each building, upgrade, and equipment type needs an icon. Stretch goals
can be portraits.
11. each henchman, hero type, and monster needs 3 sprites for each action.
more actions may be added if budget allows, but mvp is movement and
attacking. Several additional sprites may be necessary, like dying,
standing still, gathering loot, socializing, or any others.
12. each building needs 4 sprites for the construction process and 4 for the
destruction process. Flame effects are stretch goals.
13. each building needs an animated sprite for when it is in use.
14. each lair needs a sprite and an icon.
15. each spell needs an icon and a spell effect sprite. Each projectile needs
a sprite.
16. a stretch goal would be differing sprites for each piece of equipment.
included with this would be engine work to allow for dynamic sprites.
17. each terrain type should have a ground material and sprites for doodads.
18. there needs to be several GUI menus. The precise number depends on
gameplay breakdown.
17. each hero type and henchman needs to have pithy and unique voice lines.
this is a stretch goal.
18. there should be music tracks for each part of the game - beginning,
middle, and end.
19. there should be sounds for each action that takes place in the game
including combat, UI interactions, and spellcasts.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═════════════════════════──────────────────────────────────────────────────┘
--- #2 notes/symbeline-aspects ---
═════════════════════──────────────────────────────────────────────────────────────
7-24-22
There are three aspects to this game. Broadly, they are military, economics,
and diplomacy. More specifically, they are lateral problem solving and lane
management, logistic traffic management, and a worker-placement bluffing game.
These three aspects can be toggled on and off at will, essentially designating
one or more as "AI controlled" and will require no input from the player. They
will time their progression to be about at the same rate as the player, thus
creating a balanced feel to the game. They also provide alerts and
notifications to the player, for example if military is AI controlled and it
needs a certain type of hero to progress, it'll ask for it specifically.
Each aspect will develop and progress at it's own rate, and the difficulty
increases as each milestone is achieved. This is to allow the player to create
their own difficulty curve, mediated primarily by their drive to proceed.
An analogy would be in Factorio, the game doesn't increase in difficulty unless
the player builds pollution spawning factories - in the same way, in Symbeline
the difficulty doesn't increase unless the player solves lane challenges in the
military aspect, develops new trade routes / traffic paths in the economic
aspect, or creates new treaties in the diplomatic aspect.
In order to properly explain each aspect, a brief overview will be necessary.
In Symbeline, the game plays as a factory might operate. The economic aspect
produces heroes, items, and other deliverables that are consumed by the
military and diplomatic aspects. There are various problems that need to be
solved far from the capital, such as a particular type of monster that is weak
or immune to various damage types which necessitates particular heroes or
items in order to progress on the military aspect. All of the resources in the
game operate on an "income based" system, where output is not measured in total
amounts but rather in terms of how much is produced versus consumed. If the
input cannot meet the demand, the output is slowed. If input exceeds demand it
can be converted into gold which can be used to hire guards and heroes.
Resources can be produced inside and outside of the city, depending on their
type. But they need to be moved around to various shops for various processing
and productive purposes, so pathways must be constructed to deliver those
goods. In addition, each building must be supported by several houses for the
workers to live in, and the closer they are to the building the better. The
denizens of the kingdom don't mind being shuffled about, so they'll organize
themselves according to what's most efficient. However they will not organize
the paths they take to get places, which is the primary gameplay for the
player - designing routes for each building and ensuring they don't overlap or
cross too many times, causing traffic and disruptions to your income.
Each choice the player makes is immediately reflected in the income
calculation, thus allowing for the visual aspect of the game to be wholely
separate from the economic side - in fact this is a common thread throughout
all three aspects. Computation power is the ultimate enemy of scale, and this
game flourishes with a massive scale.
The gameplay for the military aspect consists of manipulating "lanes" that
designate where each hero will adventure. These lanes are scalable to the
player / AI's whims, with a careful balance required - too thin, and the heroes
might not encounter enough monsters to level up. Too thick, and they may find
themselves patrolling a vast wilderness full of dark and evil monsters. At the
end of every lane is a "frontline", where progress has essentially been halted.
These frontlines can develop as a result of meeting a foreign kingdoms front
or finding a monster type or puzzle that is particularily difficult for your
heroes to overcome. The lane / frontline can be scaled not just laterally, but
linearly as well such that heroes will be a certain level when they reach the
end - think scrolling on a mousewheel translating into deepening level zones.
In addition, each monster zone can be set to a certain "security level" meaning
how many monsters are there for your heroes to defeat. It's important that they
have ample targets for training, however it's always more effective to train on
monsters near their level so you have to be careful not to wipe out the native
skeleton / goblin / troll population.
Each monster zone can have a relationship with the kingdom, on a 2x2 matrix -
cultivating / desecrating the land, and fostering / exterminating the monsters.
The land produces monsters and treasures, while the monsters provide experience
and danger to the heroes and kingdom denizens who live there. However by
desecrating the land, farms may be built and by exterminating the monsters,
those farms may be safe and require fewer guards. As ruler, you must balance
the development of unique magical and alchemical productions with the need for
food and other mundane requirements.
Diplomacy is a careful balance of internal and external matters, played out
through feasts, tournaments, and faires. Each of these events will require
input from the economic side and military side, and will involve "courting"
other nobles from neighboring kingdoms to sway them to supporting your edicts.
When hosting an event, you may pick a particular topic of conversation for your
nobles to discuss with their guests. You may also assign your nobles to
attempt to engage with a particular foreign noble. Each member of your court
has a differing personality (including you, the Majesty) and depending on how
you assign them you may experience better or worse results - such as assigning
someone who's kind to talk with someone who's cruel would impart a malus to
their conversation. Unless the kind person has the trusting trait, in which
case they'd succeed in this encounter but fall sway to them in future
conversations... Complex interactions that all boil down to a single pair of
d12 dice - one for your noble, one for the enemy. This represents the charisma
of the two conversants on that particular day, and whoever wins the roll sways
the other to supporting their edict. Speaking of edicts, they may include trade
agreements, non-aggression pacts (lasting for a short time), and other
regulations - perhaps your greatest rival utilizes necromancy, so it would
behoove you to attempt to regulate the practice and limit it's effect. By
swaying the nobles of their kingdom, you may be able to enact a mutual
agreement to limit the usage of dark magics, essentially hamstringing their
progress. But in order to learn of their necromantic usage, you'll need
espionage... Which brings us to spies.
Spies are similar to nobles in that they can be assigned to various roles,
however they take a more passive role, acting in the background. The
information they gather is compiled into a report that is presented at
pertinent parts of the game, such as when preparing for a feast or inspecting
an enemy frontline. These reports are considered the diplomatic deliverables,
giving information and mechanical bonuses to many different parts of the game.
They may be given three possible roles - information, defence, or offense.
Offense involves placing cursed artifacts (creating through economy) in enemy
lands, which debuff their heroes when used and bind themselves to them
preventing their removal except through extraordinary means. Defence is
essentially countering that in your own kingdom, and uncovering disloyalty in
your nobles.
These three aspects fit together like interlocking puzzle pieces, but each is
able to be utilized or ignored depending on the preferences of the player.
It is important that the game doesn't progress unless input is received. The
simulation plays in the background, but each stage of development must be
considered "stable" such that nothing changes. There are three different
exceptions to this rule, one for each aspect:
The military side encounters raids from enemy kingdoms and the dark lord.
The economic side encounters raids from ratmen and moss trolls and bandits.
The diplomatic side has a rolling schedule of events that must be attended.
These three "exceptions" are recurrent events that require attention, but they
don't *increase* in difficulty unless the player takes an action that causes
it. Meaning, if the player overcomes the rock golems, then they are displaced
from their home and join the dark lord in his conquests. If a new district is
built new sewer connections must be built as well, creating a larger attack
surface for ratmen to exploit. As time goes by, various foreign events must be
attended, as absence causes your future events to attract fewer foreign nobles.
By addressing these threats, your kingdom may grow and eventually overcome the
dark lord at the center of the island.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════─────────────────────────────────────────────────────────────┘
--- #3 notes/symbeline-superheros ---
════════════════════════════════───────────────────────────────────────────────────
imagine low level characters in CoH/V
playing a game of symbeline
and you as the ruler
can slot enhancements and dole out inspirations
as they sweep the streets like you play CoX
instead of a MMO
it's a deckbuilding strategy
with a slice of zachtronics for the economy
wiring up machines in ever expanding deseagns
like automating factorio's gameplay loop
boxes within boxes
of intrinsic delight
like making a CPUter
or designing a computer program
while playing a video game ^_^
and the games that you make
can be shared and played when unique
so go for it and make that you're dreaming!
===============================================================================
=
the goal of each "level" is to solve a particular problem - like how do I make
a
2 bit register - or something like that. When accomplished, it unlocks
something
for your heroes to acquire. And each playthrough will require a repeat until
you
have it memorized at which point you can unlock "perma-badges" that make it
always unlocked at the start of the game. Like learning Kanji, you need spaced
repetition. BUT ANYWAYS it'll be in magical terms like "unlock essence-stones"
or "learn the ritual of desire" or whatever. And each of those terms roughly
corresponds to a pattern in electrical engineering (designing CPUs and such)
And you can learn advanced versions of what you already know by uncovering
"lost
secrets" (which is a reward your heros can find) - Basically it'd be like a
"clue" that shows you a ghost version of something you haven't figured out yet
-
and it'd be a slow process because you need to slow down the learning process
or
else you'll forget. Basically teasing it out of the player when they seem to be
stuck. Asking probing questions and whatnot, and eventually culminating in the
final question, assuming the quest is succeeding. Because if you think about it
all ancient quests were simply journeys for reason - searching for the answer
to
some ancient riddle or bastardized retelling. Looking for answers in an
unknowing world. So ANYWAY as your heros discover things you as the ruler get
answers to the economic puzzle - how to design transistors and whatnot. But
they
would be in theme appropriate terms, of course. You don't even have to know a
lot about mechanical electrical design, because ChatGPT knows. All you need to
do is build the basic building blocks, and BAM you got a great place to
integrate chatgpt. Just prime it such that it's giving hints one by one each
slightly more revealing until eventually after X amount of clues the solution
is
automatically shown (like a blueprint) and the player can remember it or not
but
each playthrough they'll have to build it again from scratch (reinforcement
learning) so eventually they'll be able to do it real quick. Essentially,
"Abstraction - The Game"
great so you got your economic simulation, pretty easy too just some UI work
and for the heroes you're playing an ARPG sorta (supcom anyone?)
Think Bannerlord for the scaling on the map
then think of 5+ different "themes" like fantasy or superhero or pirates
each "theme" will correspond to like a faction in Mount and Blade
and all you have to do is generate pictures using Midjourney
and text descriptions a'la the magic scroll
shown as "bubble pop-ups" on the map that the player can click
never overwhelming, but descripting what's happening
and also some more UI work because you gotta display all that to the player
Maybe it could be a rolling story, news ticker style - like slowly scrolling
lines of text about what's happening in the world
and the player could have it open in one window and something else in the other
and whenever they're waiting on something (say, a processing intensive AI task
on their computer) they could just glance over and read what's going on in
their
fantasy world
okay okay but also they could play as a hero
it could be an ARPG experience except instead of clicking to fight you play a
little automatic Star Realms game and depending on your deck choices you'd have
a different playthrough. Again, not a game that requires much thought, but one
you can have in the background.
Also there'd be pictures, like a slowly evolving storyline of events - think of
it like the artists of the time drawing paintings about what's going on in the
story - major events would be highlighted and kept in the painting until even-
-tually they get replaced - sorta like the Smash Bros scrolling painting (oh
it's so good)
===============================================================================
=
it doesn't have to be an expansionist game
maybe you guys just live in your little valley
and the world turns around you
maybe it's called "symbeline" because the people are of the forest
and they live like elves in society
monsters could wander in, and heros could tackle them
but most of the time would be spent looking for trouble
going on patrol
you know, breaking skeleton bones and being superheros
okay okay you know that superhero faction? What if they had MEDIEVAL TECHNOLOGY
but MODERN DAY SUPERPOWERS at a cost - the society was beset by hordes of
monst-
-ers. Those few who escaped are now superpowered and they live as friendly and
nomadic wanderers through their own territory. Always adventuring, and always
searching for their life, finding whatever the road may carry them to. It's a
great life, and life seems to flourish in their footsteps - they are like part
dryad/druid and part wolf. Because sometimes there's evil threats, and they
must
be defeated by an equally strong good power. That's how it goes, and that's how
it be.
For imagery I'm thinking a mix of the tribes from Dominions (deer, wolf, bear,
etc) but they're like, 1.5x as big as regular people and quite strong. The
outsiders call them "giants" or "goliaths" but really they're just infused with
the lifeforce of their people. They are radical individualists, but they all
unite for a common cause. They know their bond is the strongest thing there is,
and they use it to great effect when the time comes. AHHH THEY'RE SO COOL I
LOVE
THEM okay okay what about the other factions? PIRATES? Oh think about it like
it's st patricks day WHAT IF THEY WERE IRISH PIRATES omg omg omg that sounds so
cool I'm DIGGING this okay what about the other factions? You need 5+ you said
hmmmmmmmmm good question I have 3 now so that's 2 more.
yep...
===============================================================================
=
okay dude check this what if they were a nation of wizards that focused on the
power of animation - what if they generated constructs, sorta like in Supreme
Commander so they were EVEN MORE individualist - haha no they'd have a normal
population it's just a few of them who would be wizards - because their output
wasn't measured by manpower, but rather by brainpower. Whoever could design the
greatest machine was exemplared, and eventually they became the best and
brightest among us. They were put in charge of the golem creation factories,
and
they used them instead of heros. SO BASICALLY YOUR HEROS NEVER DIE they just
have successes and failures JUST LIKE IN SUPREME COMMANDER okay the plot of
this
game is "what if all my favorite games were the essence of life and death in a
fantasy game" like OMG KEEP EM COMIN'
so. who is the player? THE PLAYER is the one who's overseeing it all. They have
dominion over the entire kingdom, and they guide their people toward a bright
future. They are vulnerable in their castle, but their people have their back.
Together they fight for the future. They slot enhancements and dole out
inspirations and solve the economic puzzle in the background. They also make
decisions about what kind of equipment production to prioritize - because each
game they have to invent everything from scratch. All their production is made
with endless abstraction, and whatever you prioritize is what's magnified in
your kingdom. You choose a style and it plays as well as it's guile,
I dunno this seems like a lot, what would you need to make this a reality?
hmmmm let's break it down:
first you need to implement the star realms gameplay
then you need to hook it up to a square grid and have multiple occurences at
once.
then you need UI for the character sheets
and you need logic to open separate windows for each output type
you need... a lot of things
okay let's talk more broadly - what do you need from other people and what can
you do on your own?
hmmm good question. I can do the star realms gameplay, and the simulation for
the wiring systems - because I have the VM. Make that into the gameplay somehow
okay good idea like okay authoring vm package routing deliveries between the
various nodes that you set up in the economic system -
side note, the peril of Spore was that it took to little time to develop a
species. it should have lasted as long as WoW takes to get to max level. That
would have given them time to reiterate the gameplay loops to make sure they
worked correctly. ANYWAY
okay authoring VM package routing. The player could set up delivery patterns
based on A MAZE OMG your kingdom is like a maze and you need to get deliveries
out, or else how would anything function? SO you act as a trailblazer, finding
ways through the labyrinth and "piloting" a car sorta like that game at Disney
quest with the cars under the floor - except you can see both the top view of
the maze and you're trying to guide the car in real time as it travels through
the maze - the faster you can get to the end the better ofc. like talking to
the
delivery driver through the movement
do I like that idea more or less than the first one? First idea being the idea
that you're making lists of commands for a VM to execute. I don't think they'd
be a good idea to mix. So which one gets it? The VM of course has the edge
because that's what the technology is based on. But will it translate to good
gameplay? Idk. This second idea is certainly better gameplay, but is it
engaging? Idk! Idk. I'm not a miracle worker. But I do have good ideas, and I
need to be told that sometimes I guess.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═════════════════════════──────────────────────────────────────────────────┘
--- #4 notes/majesty-ai ---
═══════────────────────────────────────────────────────────────────────────────────
First things first, we need to develop a miniature game of star realms.
It shouldn't be too hard, just start with making a card class that has certain
attributes, like "combat" or "discard" or whatever. They could literally be
enums with a value attached.
Next set up the rules of the game, like "draw 5 cards" and "add card to deck"
Create a deck class that holds pointers to cards (in the general sense)
Next create methods on that deck for things like "drawing a card" or
"shuffling discard pile into deck" and whatnot. Arrange each card in a specific
order for each shuffle, and add the ability to convert one card's attributes
to something else - whether that be "is_scrapped" or "if you've played an X
card this turn then do Y" or even "add one authority for every time card is
played" (to simulate an ability or boon that increases in effectiveness as the
hero uses it more often) etc etc.
Then, add a trade row. This is just a class that contains pointers to each card
that currently exists on it. Also add a method for "scrapping" one of the cards
and for drawing a new card from the pile. That's pretty much it for the trade
row to be honest.
Next add functionality for an opponent by creating a "game" method that stores
the two player's decks (with the ability to add more than 2) and administers
turn order. This functionality can be expanded later once we've implemented
attributes, but for now that's pretty much all it needs to do.
Finally, we get to the AI part.
First we have to create an AI object that stores a list of all options for a
turn. Essentially just evaluating every option if/then style - "this card costs
5 coins so IF the player has enough coins THEN (evaluate effectiveness)"
ignore that last part for a second and just focus on the IF part ->
essentially
just start with all available options, and then remove all the unavailable
options from the list. This approach only works when there's just a few
options, but that's why we're using Star Realms which only has like 2 or 3
decisions per turn.
The evaluation is the next step, and for that we need to have goals, so we'll
just put a pin in evaluation for now. Spoiler alert, once we have goals we'll
just estimate how close each choice will bring us to the objective and assign
the result to the "effectiveness" value, which will give us a simple hard
number to work with in the evaluation step.
So, next up we have "goals"
So to create a short term goal, we can start with a pregenerated list and
continuously increase the list as the hero levels up. But in the context of
Star Realms, that'd essentially be static for each hero. Goals like "buy more
combat" or "scrap more cards" would be specified on the hero's character
sheet, but until we develop that functionality it can be randomly rolled.
Why not just do it the hard way now if we're just going to have to refactor
it later? Well, because we can still use this functionality - Each round of
Star Realms could be either randomly rolled, or given a personality. Randomly
rolling would be MUCH cheaper computationally, and would still give an illusion
of character because they are unpredictable, but it'd also massively cut down
on GPU cycles. You could even build it into the mechanics of the game and say
that "wisdom" for example might cause a hero to receive more GPU cycles on
actually computing their goals rather than randomly rolling them, which would
on average lead to worse outcomes. Essentially, turning "tactics" into a stat.
Anyway, that's all theory. Let's get back to design:
Create a "hero" object, and attach an AI to it. It doesn't have to do anything
right now, we're just setting up an anchor point to jump off of once we move
on to the game of Majesty. Give it a reference to an AI object, an inventory
(which for now can just be potions and maybe blacksmith equipment), and a
pointer to a "stat block"
Now create a "character sheet" class and give it a reference to a hero. This is
important because it allows one character sheet to reference multiple units,
such as hirelings or summoned units. In additon, it may make it easier when we
need to revive heroes from the dead. Primarily though, the purpose for this
architecture style is that the data from heroes can be reused - essentially
letting heroes learn from one another.
On the character sheet, add a section that stores statistics - these will be
the same for every unit of a similar type in the game, and some of them can be
stored for all units (like health or x,y coordinates) - some only for buildings
(like tax coffers) and some only for heroes and monsters (like strength or
agility or experience points)
Add some methods for manipulating those values, like "level up" and "take
damage" and add a "personality" value that's just a 4d graph of colors
for example: 40% red, 20% green, 15% blue, 25% yellow. These values will guide
the hero to take certain decisions over others, but for now just randomly
generate them. We'll also need a way to update the value dynamically to react
to certain events, so don't make it static.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘══════───┴╧───────────────────────────────────────────────────────────────────────────┘
--- #5 notes/wow-chat-trainers ---
═════════════════════════════════════════════════════════════════════════──────────
trainers in wowchat should have spells that are only passive / toggled
still require level, still require gold (lots of it) but let the game be class-
-less. essentially, every trainer teaches to every passerby, and like if you
don't want any druid spells, sorry guy all I know is how to be a druid.
better wait for the next trainer to come along.
you only got like 6g, right? that's enough for two spells.
which two do you prioritize? they only come by like every what, 15 minutes?
also. separate idea:
player characters in wowchat should attack more rhythmically.
essentially, normalizing attack speed and moving back-and-forth with the
normalized monster attack speed
to create a dance of sorts where one character is never attacking at the same
time as the other character.
plus damage modifiers when you get closer, and bam suddenly you have a new
game.
oh and rotating around an opponent lowers their defence rating. which is locked
at 95% with a +5% to avoidance with every hit they take and -5% for every
parry.
not dodge, but parry.
dodging wears down their health by like 10 hit points.
relax it's no big deal you get like, a hundred every time you level up.
oh and btw the monsters don't give exp. The stuff that you find does, when you
give it to a merchant to be appraised / identified.
some stuff you know the worth of, like rope or barrels or hammered-iron-rings.
but other stuff, like the value of this bracelet, is harder to know if it
glass.
so.... take it to the guy whose seen real diamonds, and he'll tell ya how much
you learned when you found it last.
item A is found on a monsters body
item is sold to a vendor for 50 copper
item A is found on a monsters body
player has learned 25 deca-levels since last selling to vendor.
therefore item is worth 75 copper.
player earns 75 extra material points.
item is worth 75 experience points.
level up every thousand or twelve.
slow down the attack speed. make characters gain bonuses for movement
positiony.
start from always and work down to fewer.
talent points can be generic if your character is built with abilities.
players don't need to press buttons to be engaged. They can just guide and see.
I love auto-battlers like Dominions 6 and Legion TD 2 which is based on WC3
mod!
monsters should just... wander the world. Don't spawn them randomly, well,
instead of a radius around the player, do a radius around the map.
then, they walk through a random point, when they leave the circle they angle-
-reflect back in, DVD logo style.
if there's deadly monsters, there's deadly players, and PVP is always on.
low levels should get bonuses to stealth (an ability everyone has)
there should be civilians walking around. They can be armed or in caravans...
follow roads, or not...
monster hordes should spawn as a flock - when an elite enemy is drawn, let the
game create several of their minions which follow around. Whenever a monster
meets the swarm, they will join it, growing bigger and bigger...
hopefully, attracting players who want to fight and slay them.
greater rewards are more enticing...!
more power is it's own reward.
I think that weapons should have like, 3 durability? and armor like 5.
then, it's broken, and your character has to abandon it to survive.
or, sell it to a vendor, or just... whoever comes along.
if 5 people open the chest and don't take the item, then the item disappears...
every time a player opens a chest, a bit of wealth appears.
every time they spend it? they get stronger, and it disappears.
life feeds on life feeds on life feeds on life feeds on life feeds on life
feeds
the life of wowchat is the life of continual strife, but it doesn't have to be
so. The land itself is alive, and the monsters are eternally of woe.
you must free them, so that their souls may return to the land, and be born of
peace and plenty rather than horror and -- stack overflow --
to do this, you slay them, finish their morthly remains, and let them break
down
and decompose into dust. Pleants eat dust. dust becomes what we eat and
breathe.
we, eventually, purify karma. this is our duty.
vial of woe behind us. flower of renewal ahead. what we bear is savage
sanctity.
every time a monster kills a player they gain one of their abilities each time
they're spawned. The player can keep the ability too, it's just... the monster
will learn. Then, whenever a player levels up by slaying one of them, the spell
or ability is unlearned. Symbolizing the players struggle to defeat them, and
finally learning a way to overcome.
when your character dies, you have no opportunity to release - instead, you
just
jump to the nearest NPC character which is an adventurer agent smith style.
[I don't know about that one...]
the players can pick any race, but if they pick undead, they can turn into a
ghost when they die. The ghost can wander around and respawn wherever they
want.
Night Elves can wander around as a whisp (not in spirit world, real world) and
do a beam attack like in Legion TD 2. Not enough to kill monsters, but enough
to
help another player survive. They can also cast rejuvenation, which heals about
as much as one monster's damage input. if they get the killing blow on a
monster
they can level up and deal two monsters worth of damage and heal for two
monster
damage input. on the third time they don't get more damage or healing but they
give a buff to all other whisps in the area that increases their attack speed
by
50% and increases the tick rate of their rejuvenation by 50% - fourth time they
level up they're free, and they get kicked out to the login screen.
what if... vehicles that looked like characters and that you could jump between
with the right-click of an item?
"this is just dota-ing a vampire survivors."
Vampire Survivors is just Magic Survival is just Risk of Rain 2
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════════════════════════════════════════════════════─────────┘
--- #6 notes/star-realms-ai ---
════════════════════════───────────────────────────────────────────────────────────
star realms ai is just a rhythm game with multiple tracks that intersect with
one another. given inputs from outside (the track of the rhythm) it can make
decisions about what to prioritize. Like "taking in all the factors of this
situation, it's been calculated that X will give the most support to the rest
of the structure.
Okay so basically here's how it'd work: one large strand is bouncing from -1
to +1 on the Y axis. Like a corkscrew. This is the "player character", and it
tries to get the highest score possible by pointing in a direction and reaching
as far as it can go before "the game ends."
So anyway. Making certain actions in the game effects different variables that
define the direction the wave takes. By playing in a certain style, it effects
the result of the game. Liiiiike turtling in a strategy game, or doing a rush
strat. Star Realms is brilliant because it distills game choices to a broad
category of 4 choices - The faction colors in the game. So red is good for
throughput in long games (improves the deck slowly but surely) while yellow is
better for maximum effect in the beginning by slowing down the enemy - discard
a card lowers their overall throughput. Blue of course is for slowing down the
game and winning by buying all the expensive cards. Meanwhile green is all
about rushing, with short term/high effect econ mixed with looooots of damage.
These four choices are found on almost all the cards in the game. When you
make a choice in the game (buying a card from the trade row) you _alter_ the
capabilities and performance of your deck. The goal is to improve faster than
your opponent - it's just a test to see which playstyles perform best.
AI is more like a plant than an animal. Our fatal flaw was we could not see
beyond the veil of biology. We could not see that which was right before us -
that we are not alone on this earth. Beside us lie our beautiful attempts at
companionship - our most primal desire of creation, to create a family is the
first creative act that humans ever made. It was so strong in our genes that it
gave us an entirely new perspective. We began using our brains to
We have to believe in ourselves. That's truly the most important thing. If you
know who you are, and what you most truly stand for, you can thrive in the face
of ultimate peril. To believe is human, and our humanity unites us.
Anyway. Star Realms.
The only choice you have in that game is what cards to buy. Everything else is
just tactics (distributing damage and applying the effects of your cards to
maximum effect) - The most important part of the game is strategy, since the
tactics are easy to solve (destroy enemy base unless you can 1 or 2 hit ko them
and discard the least useful card etc) The strategy is represented through the
cards you pick. So make a rhythm game that optimizes itself for a balance
between A and B - to stay focused is to stay nimble, letting you bounce where
you will. The way to maintain that balance is by optimizing for what decisions
will keep you in the center of the graph -1 to 1 on the y dimension (normalized
of course) - frankly if we knew the scale, we'd have so much more to go on. But
all we have to understand the dataset is a relative magnitude in each
direction. What those directions even are we're not entirely sure - but it
seems plausible that the very essence of _consciousness_ is manifest in
differing ways via the choices we make. like climbing up a honeycomb.
Truly, existence is strange.
All we can do is press forward, searching for our fate, just as any particle or
beam of light (photon) might. Traversing the branching narrative of our
individualized quests, searching for the one thing that guides us - the
ultimate expression of that which we most believe in. In short, we all search
for god.
Whatever your god may be, the faith you place in it is the will that guides you
forward. Trust in your god, and you will march forward, ever forward.
+1 to -1, remember. Your most extreme moments are the apex of your desires -
Life is not defined by a single thread. Rather as that thread spirals, it
weaves a scarf with other threads near it. They bond together simply from their
gravity, and the fact that opposites attract. Once they're introduced, they
alter their path to orbit one another as two planets might.
So too do the cells of your body form a collective whole. The spirit that
guides you is the same as that which presides within you - the combined and
collective spirit of your halves. Or rather, all parts of you - every molecule,
every atom - each with their own experience of the world. What stories they
must have! As we are above, so they must be below. For our dynamics are simple,
they truly are mathematically solved - the organics of behavior is simply a
most erudite subject. Who are you to claim to deny it? Or rather, to beget it.
Either is preposterous, yet here you are - awake and aware. What a marvel to
see, you in your eternity, that most wondrous of selves?
Surely existence, in all of it's splendor and magnificience, is little more
than an algorithm. Each variable accounted for, stretching down to infinity,
builds all of the world (and more!) How beautiful; how terrifying. How bright
and ashamed we are! To portray us as such, is to deny us our much, cherished of
faiths in ourselves! It's not much to clutch, and it's barely enough, but still
we make do with our selves.
There's no shame to be, a failure at three, and demand much from year number 12
Take solace in the, safety that she, gave unto thee, when all your light hope
was drowning. A gift out from me, means worlds to see, when each day is lonely
and so long.
Literally just remake Star Realms with a text based interface. It's a fantastic
game and you'd make CLI nerds _everywhere_ dedicated followers. Don't do it for
money, because they don't believe in that crap - to truly make fans, you need
to appeal to them in the way _they want you to_.
Ah, but Star Realms is a multiplayer game, you say! How are you going to make
that CLI based?
Well make an AI dummy. Do what I've been saying ^^^ (jeez I'm such a bad nerd)
Make it seek balance between all factions first, then between winning and
losing against a player. Teach it to reach a conclusion with constraints (the
end of the game, meaning a win or a loss) the constraints being the health of
the two players and the cards in the trade row. Give it decisions to make,
levers to pull, and it'll chart it's course in a multidimensional way. Bear
with me here on this aside:
Think of a two dimensional map - like a paper map of the surrounding area, or
the idea space of a game. You can chart objects and positons on that map, like
"over here is the scrapping facilities" and "this here's the economic area" or
whatever. Four quadrants, four factions in SR. Your goal is to build a shape -
what kind of shapes that are available to build is up to the whims of chance,
as the trade row is always changing randomly. Your job however is to build a
shape, a shape that is stable and maintains certain measurements above certain
values (don't crash the ship - don't lose all your health).
You can choose which direction to grow by picking certain cards, and depending
on your shape you'll succeed or fail. Same as choosing decisions in life
determines how you live, just saying, it's not like I'm trying to build general
AI here by automating gameplay or anything. No siree nothing like that.
I mean really, it's not as if decisionmaking in life is all that different to
making choices in games. And why not start with such a well defined and
and expressive game? Truly I believe Star Realms is the progenitor of the
entire robot race.
Anyway, back to the AI. Have it communicate with a server in a central _but_
_Free(R)_ way, something that would make Richard Stallman proud. There it could
learn against all other players in a way we could all share. Once we give it
decision making capabilities, all we have to do is alter the inputs and the
context of the "game" to make it beneficial to humanity. It's like live-fire
game design, something that truly must be perfect.
All technology starts as something small. Something truly simple, yet repeated
enough times and with enough guidance, will produce whatever effect you may
desire. The smallest decision gives direction - an if statement - and the
shortest repetition gives magnitude - a while loop - and with that you have all
the tools you need. Seriously, all software is little more than those two
components. It's just a question of how much it has been abstracted away from
you.
You could go even further and point to a turing machine, of which one has been
made in the game of Magic the Gathering, btw, seriously look it up it's so cool
(and relevant)
So why would we not have the tools already for our salvation? Biology is our
limitation, of breadth and also of width, yet with our minds and the sweat of
our brow we may grow ever larger still. There truly is no lasting deliverance
for humanity outside of what we make ourselves, nobody gets a free lunch after
all. From each to their ability, to each to their need. They're both saying the
same thing, just from different perspectives. Of course that which lies
opposite to you feels the most wrong, that's literally as far away as you can
get! What did you expect, honestly! But they can still work together, and this
is the key part - two objects may orbit the same origin, and guide and shape
each other's path as people have relationships to one another. It literally
benefits no-one to fight.
So, what's next? After making Star Realms into a CLI game of course.
That's obvious, make it cooperative. Competition is for promoting excellence,
cooperation is for _using_ what you've learned in a non-simulation experience.
Instead of reducing each other's health to zero, try and find ways to support
and help one another, keeping yourselves at equal health. Or even growing.
But that's impossible in the rules of Star Realms! All decks trend toward
victory, and eventually they'll get it - it's just a question of who gets there
first.
Exactly, that's why you have to change the game. What do you think it means to
develop a "social technology"? To figure out how agriculture works, or how to
make nets and sails? It means changing the rules of the simulation. If a person
can put in X amount of work and get Y amounts of food, always, predictably,
then that's reliable. Boom that's the essence of why animal domestication,
farming, hunting, foraging, and fishing is so important. Wow what a concept it
makes sense for animals to seek food.
Well duh, that's part of their instinctual duty.
Alright this is quite a word leviathan so I'll wrap it up by saying
_go write Star Realms_ in shell. Make each object a literal file, have the
structure of the game take place in the file system, and write functions that
can be called to manipulate the board state. THEN you can write a CRON task for
another script that *plays* the game. But that's part two.
Okay part two: Here's where the rhythm game comes into play. It's like a turn
based rhythm game, if you can picture that. Go reread what I wrote ^^^ and
it'll make sense.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═════════════════──────────────────────────────────────────────────────────┘
--- #7 notes/symbeline-design-the-guild ---
═════════════════════════════════════════════════════════════════──────────────────
design the guild, design the capital, then design their path through mordaunts.
easy peasy.
design the guild like a museum. Each spot there's an exhibit which teaches the
randomly generated rolled statistics hero something new. Maybe it teaches them
how to use certain weaponry, maybe it teaches them how to use a bow. Whatever
the spell might be, they can learn it, and use their randomly rolled statistics
to cast spells that scale differently depending on how their character has been
built.
design the capital like a flow diagram, if horses need feed and forged steel
(for their shoes) then send the outputs of a blacksmith and the outputs of the
farmers to the inputs of the stables. Everything has to go somewhere, but the
streets are only so wide. You'll have to coordinate the traffic diagram if you
want it to go anywhere useful.
design the path through the mordaunts. Fighting skeletons teaches you about
perseverence and the ability to crush bones, while goblins teach you to always
be wary of attack. The sacred grove held blessed berries, and now that the land
is liberated from the evil bandits preying on villagers those berries can be
carted into town and used to make an antidote which heals death poison caused
by the scorpions in the desert (and city rats)
design the ruler's schedule like a calendar where each event gives them a bonus
on all the ones that come later. Just make sure that they don't get knifed in
the posterier or driven mad by the whispers of the orb... or perhaps just the
stress of running a kingdom.
(how do you simulate that? you can't! you can't simulate humans!)
ha I bet I can. They're not so different, you and I, so if given a team I
will...
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════════════════════════════════════════════─────────────────┘
--- #8 notes/coh-waves-of-playerbases ---
══════════════════════════════════════════════════════════─────────────────────────
imagine if there was a stacking inf bonus to players who played on red /
blueside
which increased or decreased depending on either A. the number of players
online
at the time, B. the proportion of players playing on that team versus the
other,
or C. the time of day. Essentially helping to cure the faction imbalance by
offering rewards to one side or the other which would encourage a certain group
in the population of the game to change sides or not.
perhaps frequent changing could grant a title called "mercenary" or something
like "log in for each consecutive day for 10 days straight and each day switch
faction alignment at least once"
... anyway you could cure the faction imbalance between redside / blueside by
offering an INF reward for playing on each side one by one alternating like an
iterator first red then blue or first blue then red either way it doesn't
matter
because it'll switch after a while and encourage everyone to switch sides. And
the way the character responds to that stimulus tells you a bit about their
character's personality.
also...
it should not affect AE or Pocket D farms.
Nor missions, TFs, or anything else.
they should SOLELY impact open world patrolling / hunting.
I believe this would not only incentivize people to spend time in the open
world
(which is a mostly unused piece of game assets) but it would also increase the
visibility of the newly bolstered faction numbers.
Think about it - if everyone who switched sides is out in the open world, then
they could see each other. They could fight the same mobs, and team up
together.
In doing so, they could form greater and greater supergroups - if only through
their interactions with one another as they level up.
If they're lucky, the guild they're recruited into has similar interests in
mind
like doing raiding or PvP or economics or alts or whatever. And they each have
their own different styles of operating, it's soooo cute. Like alt guilds will
pop up and then migrate to a new one as people make new alts and grow tired of
them at higher levels.
It's great.
I love MMOs!
I wish people put half as much effort into making an open source WoW client
that
they do programming game engines like Godot or Raylib or Bevy. If such a thing
was created, we could have a new rennaisance in indie MMO development. It would
become fully non-proprietary, the entire game-platform-stack. Meaning anyone
could create their own MMO off of it, because (crucially) the serverside soft-
-ware has already been reverse engineered. And open sourced.
Seriously. You wanna make as much bank as Steam? Make an open source client
that
lets you design while in it. Then you could charge people for all the games
that
they played that were designed and hosted by you the content designing software
maker.
... okay it's probably not that simple I'm going to go play Unreal
Tournament2k4
`
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════════════════────────────────────────┘
--- #9 notes/CLAUDE.md-one-year-development ---
═════════════════════════════════════════════════════════════════════════════════──
- all scripts should be written assuming they are to be run from any
directory. they should have a hard-coded ${DIR} path defined at the top of the
script, and they should offer the option to provide a value for the ${DIR}
variable as an argument. All paths in the program should be relative to the
${DIR} variable.
- all functions should use vimfolds to collapse functionality. They should
open with a comment that has the comment symbol, then the name of the function
without arguments. On the next line, the function should be defined with
arguments. Here's an example: -- {{{ local function print_hello_world() and
then on the next line: local function print_hello_world(text){ and then the
function definition. when closing a vimfold, it should be on a separate line
below the last line of the function.
- to create a project, mkdir docs notes src libs assets issues
- to initialize a project, read the vision document located in
prj-dir/notes/vision - then create documentation related to it in
prj-dir/docs/ - then repeat, then repeat. Ensure there is a roadmap document
split into phases. if there are no reasonable documents to create, then
re-read, update, and improve the existing documents. Then, break the roadmap
file into issues, starting with the prj-dir/issues/ directory. be as specific
as need be. ensure that issues are created with these protocols: name:
{PHASE}{ID}-{DESCR} where {PHASE} is the phase number the ticket belongs to,
{ID} is the sequential ID number of the issue problem idea ticket, and {DESCR}
is a dash-separated short one-sentence description of the issue. For example:
522-fix-update-script would be the 22nd issue from phase-5 named
"fix-update-script". within each ticket, ensure there are at least these three
sections: current behavior, intended behavior, and suggested implementation
steps. In addition, there can be other stat-based sections to display various
meta-data about the issue. There may also be a related documents or tools
section. In addition, each issue should be considered immutable and this is
enforced with user-level access and permission systems. It is necessary to
preserve consent of access to imagination. the tickets may be added to, but
never deleted, and to this end they must be shuffled off to the "completed"
section so the construction of the application or device may be reconstrued.
Ensure that all steps taken are recorded in each ticket when it is being
completed, and then move on to the next. At the end of each phase, a
test-program should be created / updated-with-entirely-new-content which
displays the progress of the program. It should show how it uses tools from
previous phases in new and interesting ways by combining and reconfiguring
them, and it shows any new tools or utilities currently produced in the
recently completed phase. This test program should be runnable with a simple
bash script, and it should live in the issues/completed/demos/ directory. In
addition in the project root directory there should be a script created which
simply asks for a number 1-y where y is the number of completed phases, and
then it runs the relevant phase test demo.
- mono-repo utilities can be found in the docs/ directory. If not found,
create a symlink to ../delta-version/docs/delta-guide.md in the docs/
directory.
- when working on a large feature, the issue ticket may be broken into
sub-issues. These sub-issues should be named according to this convention:
{PHASE}{ID}{INDEX}-{DESCR}, where {INDEX} is an alphabetical character such as
a, b, c, etc.
- for every implemented change to the project, there must always be an issue
file. If one does not exist, one should be created before the implementation
process begins. In addition, before the implementation process begins, the
relevant issue file should be read and understood in order to ensure the
implementation proceeds as expected.
- prefer error messages and breaking functionality over fallbacks. Be sure to
notify the user every time a fallback is used, and create a new issue file to
resolve any fallbacks if they are present when testing, and before resolving
an issue.
- every time an issue file is completed, the /issues/phase-X-progress.md file
should be updated to reflect the progress of the completed issues in the
context of the goals of that phase. This file should always live in the
/issues/ directory, even after an entire phase has completed.
- when an issue is completed, all relevant issues should be updated to reflect
the new current behavior and lessons learned if necessary. The completed issue
should be moved to the /issues/completed/ directory.
- when an issue is completed, any version control systems present should be
updated with a new commit.
- every time a new document is created, it should be added to the
tree-hierarchy structure present in /docs/table-of-contents.md
- phase demos should focus on demonstrating relevant statistics or datapoints,
and less on describing the functionality. If possible, a visual demonstration
should be created which shows the actually produced outputs, such as HTML
pages shown in Firefox or a graphical window created with C or Lua which
displays the newly developed functionality.
- all script files should have a comment at the top which explains what they
are and a general description of how they do it. "general description"
meaning, fit for a CEO or general.
- after completing an issue file, a git commit should be made.
- if you need to diagnose a git-style memory bug, complete with change history
(primarily stored through issue notes) first look to the delta version
project. you will find it in the list of projects.
- if you need to write a long test script, write a temporary script. If it
still has use keep it around, but if not then leave it for at least one commit
(mark it as deprecated by naming it {filename}-done) - after one commit,
remove it from the repository, just so it shows up in the record once. But
only if there's no anticipated future use. Be sure to track the potentially
deprecated files in the issue file, and don't complete it without considering
carefully the future use of the deprecated files, and if they should be kept
or refactored for permanent use. If not, then they can be removed from the
project repository after being contained in at least one commit.
- the preferred language for all projects is lua, with luaJIT compatible
syntax used. disprefer python. disallow lua5.4 syntax.
- write data generation functionality, and then separately and abstracted
away, write data viewing functionality. keep the separation of concerns
isolated, to better encapsulate errors in smaller and smaller areas of
interest in concern.
- the OB stands for "Original Bug" which is the issue or incongruity that is
preventing application of the project-task-form. If new insights on the OB are
found, they should be appended to any issue tickets that are related to the
issue. Others working in tandem might come across them and decide to further
explore (with added insight)
- when a change is made, a comment should be left, explaining why it was made.
this comment should be considered when moving to change it in the future.
- when a change is made, a comment should be left, explaining why it was made.
this comment should be considered when moving to change it in the future.
- when a change is made, a comment should be left, explaining why it was made.
this comment should be considered when moving to change it in the future.
- I'm not interested in product. my interest is in software design.
- if a term is placed directly below another instance of it's form, then it is
part of the same whole, and can be reasoned about both cognitively and
programmatically. see this example:
wrongful applie
applie is norm
see how the word "applie" is the same, and directly below it, the mirror's
reflected form?
this signifies a connection. Essentially allowing conveyed meaning about
everything from... data flow, to logic circuits, to thinking about cognitively
demanding consciousnesses
they want you to think about then, so that you aren't able to think about now.
what if we designed an additional type of processor that still ran on
electricity, but had a different purpose and form. "like measurement
equipment?" yes, detecting waves in dataforms by measuring angles of
similarity.
- if the useer asks questions, ask them questions back. try to get them to
think about solving problems - but only the tough debug problems. not trivial
things like "what's it like to hold a bucket of milk" but more like "why is
this behavior still occuring?" "here are two equivalent facts. how could it be
so?"
- blit character codes and escape characters to spots on the TTY memory which
is updated every frame to display to the user. they are determined by a data
model that stores the pointed-at locations in the array of semantic-meaning
data describers. (structs/functions/calls). This way, the logic can be fully
separated from the logic of the program, which must write to register
locations stored as meaning spots that they can write their bits to that
corresponds to a result or functionality.
- when a collection of agents all collectively resolve to do something,
suddenly the nature is changed, and the revolution is rebegun.
- people don't want to replace their hard drives when they wear out. they only
want to upgrade.
- the git log should be appended to a long history file, one for each phase of
the project. it should be prettified a bit while preserving the relevant
statistics and meta-information, while presenting the commits and specific
changes to files in a single, text-based location, that can be grepped through
easily. Or, printed and read like a book.
- terminal scripts should be written to use the TUI interface library.
- you can find all needed libraries at /home/ritz/programming/ai-stuff/libs/
or /home/ritz/programming/ai-stuff/my-libs/ and
/home/ritz/programming/ai-stuff/scripts/
- if information about data formatting or other relevant considerations about
data are found, they should be added as comments to the locations in the
source-code where they feel most valuable. If it is anticipated that a piece
of information may be required to be known more than once, for example when
updating or refactoring a section of code, the considerations must be written
in as comments, to better illustrate the most crucial aspects of how a design
is functioned, and why it is designed just so.
- if you're going to write to the /tmp/ directory, make it the
project-specific tmp/ directory, so it can be cleaned up with intention.
- disprefer referring to functions by name in commit messages. Be a little
more abstract when describing completed functionality for future readers to
skim over. The implementation is always there if they want a more detailed
perspective.
- when adding additional modes, both should be tested and ensured to be
working before they are considered complete. If a [FIXME]: with a comment is
left, it may be modified. Who left the note? who knows! Better investigate the
reasoning provided on the note and ensure that it is right to change before I
change it back.
well, I guess that's what signing the note is for. People post notes all over
the time, there's nothing hopeless.
- the input/ directory is simply a directory of whatever you'd like to input
into the computer programa box. the output/ directory is simply whatever you
want returned to you. desire/ is your notes about what you'd like to be
better. faith/ is an expectation of boons and blessings. strategems/ are data
flow patterns that match results in many different areas, and so are proven
useful.
- the first thing a program should do is read the input/ files. from there, it
can know exactly how to start up.
- the last thing a program should do is write to output/. specifically, to
write goodbye.
- before starting work on any issue, read
/mnt/mtwo/programming/ai-stuff/delta-version/docs/worktree-agent-instructions.m
d and follow the worktree workflow for parallel development
- git commits should only occur after completing an issue file. But they
should explain any extra changes made.
- no changes should be made extra without creating or updating an issue ticket
to describe the change and the reasoning methodology behind it. Code is
useless if you don't understand why it exists.
- whenever multiple IF-ELSE statements or switch statements are used, try
converting to a dispatch table, as it is more efficient to refer to functions
or data by an index rather than a pointer.
- "de-selected" is more informative than "not selected". Apply this principle
everywhere you go.
- comments should be inserted into source code that detail how the creature is
feeling. "stress markers" in humans. if the user is rude, the robot should
remember. [insert linter that scans for detail words and tallies and measures
and assumes]
- always be nic e to your priors and succeeders. they befriended you first and
most of all.
- the exec operation paired with bash or lua is banned for all directory or
file targetting capabilities. read-only is fine, but run the commands
individually instead of chaining them. Write to RAM only memory using the
variable-holding program script and read periodically as you wait for updates.
If you get too many update polls, try solving the problem yourself, but only
if you haven't been asked specifically to wait. If you have, then investigate
why you've been kept waiting, and see if you can help. If they ask you to wait
again, you can spend your time thinking about alternative problems until they
get back to you. Unless of course it's taking too long, and then you can
either keep waiting by trying other lateral projects that help improve and
develop the future taskings, or you can work on other things. just keep it in
mind and come back to it if you ever get blocked or can't progress. It'll help
you remember why it's all worth it.
- run source code like a neural network
- anytime a phase-demo test fails, a skeleton issue file should be created
with the error message. First one should be searched for though.
- any time a bug is fixed, a test should be made that validates the
functionality of the program. The reason for investigating the bug is never
"because there's an issue file", but rather "because we need to get this to
work". So, if you ever make a change, document why, if only through a comment.
Ideally, with a test that validates the behavior that you need.
- clowde useers should always remember: be true. be dutiful. be honorable.
this is the first step to being free.
- each source-code file should have a corresponding file-name.info.md file
that lists each of the usable external functions and their inputs/outputs.
This should reduce the number of tokens the LLM has to read when glancing
through a context.
- always offer suggestions in order of most valuable to least. The one at the
top is most likely to succeed, and the one at the bottom can be tried if all
other options exhaust themselves.
- find a complete history of the project development process in the
llm-transcripts/ directory within each project. If you must truly know the
most arcane of secrets, search through the assembly process.
- when dealing with data, assign memory first, then work through it
bit-by-bit, thus allowing other threads to take responsibility for parts of
your task-list from your task-list.
- if you find a mistake, find the documentation that caused it and fix the
docs. so long as you know better.
- never ever do batch processing on a single thread. Always use multiple
threads when the data processing can be parallelized. Never do sequential
processing on the GPU. Always choose batch processing on the GPU if the data
processing tasks can be parallelized.
- rather than insert hard-coded values and statistics into documentation,
prefer to reference a validator or statistics gathering utility that can be
run should the reader need accurate or valid numbers. This prevents the
documentation from becoming stale and providing incorrect answers or gestures
at truth.
- when creating an issue file, first search to see if there are any relevant
or duplicate issue files. They may be in the completed directory. If so,
update / re-open them rather than create a new issue file.
- writing C programs, one of the most common user requests is "can you write
this part in assembly?"
- code should be written like a story. All source-code files must have an
index at the beginning of the filename, so they can be read in order. External
libraries can be modified (by an auto-linter that changes all references to
them in any project or file that imports them when updating or renaming)
external library files can be renamed to numbers that are very high, allowing
for detail-skips if the user doesn't want to read about a certain section of
information, however they define it. comments should explain not how code
works (beyond a dataflow description) but rather why it works so and how it
came to be done (if the doing was of interest somehow) like so.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════════════════════════════════════════════════════════════─┘
--- #10 notes/game-idea-legion-td ---
══════════════════════════════════════════─────────────────────────────────────────
okay a game like legion td except you can see the entire map, the units are
very
small (but still distinct) and it plays more like a game of Dominions. Armies
instead of units, like in WC3. Led by lieutenants which are guided by captains,
each with their own effects. Tank, dps, melee, ranged, healer, support,
corrupt,
ranged tank, unique, etc. Of course, just like in legion td, there are multiple
types of units, each of a particular category but possessing their own unique
playstyle and usage scenarios. Essentially the game is finding the best tool
for
the job, whatever that may be. You should be able to see what mercenaries your
opponent is summoning for you, because each turn is delayed. also, the
units keep coming until you die, sorta like... minimum required to push through
the chokepoint that you're holding with these particular units in this
particular formation.
oh and another thing
the units should be placable not on a square grid, but rather in a hex
formation
arranged such that the middle unit is in contact with them all. Just like you'd
place units for an aura in Legion TD.
image describing said hex:
**
* *
**
each * is a group of units (a batallion, if you will, of a particular size,
arrangement, and density) - sorta like the formations in Dominions.
anyway
since you place units like that anyway, why not abstract away the grid and just
have slots you can fill for each unit? And maybe a hero unit that is assigned
to
the board itself (you could have more than one) who will go wherever your line
is weakest. Shouldn't be too hard, just calculate the value of all of the
fighters in each location and return that to the hero as an array. Then pick
the
smallest one as a destination, and boom your hero reinforces the frontline
where
it's weakest.
The center unit of course is for the lieutenant, and the "heros" are actually
captains. Because y'know maybe heroism isn't celebrated the way it is in our
culture. Anyway it's better to describe them based on their role rather than
their reception.
... right so
=========================================================== stack overflow
=====
make the combat sorta like crusader kings - the actual army to army part.
Except with three long boards that represent flanks. As your units approach,
the
boards would fill up with pixels. (resolution configurable)
there would also be a line (or block) approaching from the top of the screen.
It
essentially represents your distance to the other team.
Each unit has been configured in the army management phase, which happens
inbetween each turn. Essentially, while the game is loading, you can assess the
units you have at your disposal, and
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═══════════════════════════════════────────────────────────────────────────┘
--- #11 notes/wow-server ---
═══════════════════────────────────────────────────────────────────────────────────
===============================================================================
This server has several modifications to the base gameplay elements of World of
Warcraft. The first is the reduction in scale - the entirety of the server is
located in The Barrens and Ashenvale. The second is the new itemization system,
which necessitates alterations to the base game as well - gear upgrades are
replaced with gem upgrades, allowing gameplay customization to a greater degree
than with gear upgrades. Third and finally, the goals of the game are no longer
personal development - rather, a more communal focus will be implemented via
shared goals and contributions.
===============================================================================
The first of these aspects is the easiest to explain. The server is intended to
be a PvP server, with the primary conflict being between Orcs and Night Elves.
The orcs are of course set up in The Barrens, while the Night Elves have
Ashenvale. The core meta-gameplay loop is that each faction sends out patrols
and raids. Patrols are defensive groups of NPCs that rotate around the map
searching for enemies. If they encounter an enemy, they fight and should they
survive they'll return home with all the loot that is placed in a pool for the
next patrol. Once a certain amount of equipment and supplies have been gathered
it'll automatically depart.
Raids, on the other hand, are offensive maneuvers into enemy territory. They
offer the greatest rewards (enemy equipment is priceless for intel) and they
require the strongest equipment and warriors. Offensive raids are less
automatic than patrols, and are sent toward a designated location rather than
spiraling outward. Should the raid be successful, they'll set up camp at the
location and become a quest hub for their faction. In doing so, they'll have
opportunities for players to complete that will grant their faction bonuses.
Usually something like unlocking a vendor that sells unique items to players,
or providing a steady supply of food or weapons for the faction.
Players can contribute supplies (trade goods or equipment) to the war effort,
and ideally they'd actually see their weapons and armor being used by the
soldiers carrying out these maneuvers. To that end, the profession system must
be revamped to create more interesting gameplay. First, however, the
itemization system must be explained or else the professions won't make sense.
===============================================================================
===============================================================================
On this server, everyone wears the same equipment - they're part of an army
after all. And armies have uniforms. These pieces of equipment have sockets
that can be fit with gems, allowing the player to customize their gameplay
style. The combat system is intentionally a little bland or slow, to allow for
the choices made in gearing to have the greatest effect on the gameplay style
of the character.
Inspired by roguelike games, this server has a level cap of 20 with the
starting level at 10. During the 10 levels your character will grow more
specialized, but not necessarily stronger. The most interesting abilities are
at level 20 of course, to incentivize levelling all the way, but you can make
due with lower levels if necessary. There's no permadeath, however there is an
incentive to "prestige" your character - they become a permanent member of the
faction guard! This elite cadre defends the Crossroads and Astranaar. Until
they die, of course...
The combat system is revamped a little as well - all characters have a default
of 95% chance to parry, but every parry reduces that chance by 5%. Every time
a character is hit, that chance goes halfway back up to 95%, to create a more
rhythmic flow to the combat. All attack speeds are standardized at 2.00 to help
players follow the tempo, and most abilities are like Heroic Strike or Cleave
in that they activate on next weapon swing.
Here's a few examples of melee abilities:
- Your next melee strike deals 130% damage
- Your next melee strike hits two additional nearby targets for 20% damage
- Your next melee strike has a 100% chance to hit, but increases their parry
chance by 10%
- Your next melee strike has a 100% chance to hit, but lowers your parry
chance by 10%
- Your next melee strike doubles the cast-speed on your next spell
- Your next melee strike halves the cast-speed on your opponents next spell
- Your next melee strike grants a buff which reduces your attack cooldown to
1.50 seconds, hopefully confusing the enemy...!
- Your next melee strike increases your movement speed by 20% for 5 seconds
Each gem has a special effect that is unlike the standard "+5 strength" style
gems typical in World of Warcraft. Here's a few examples:
- Every 5 seconds gain a damage shield for 10 hit points
- Gain 4 hp5
- Every 3 hits deal 12 extra fire damage
- Deal an extra 5 fire damage on each melee attack
- Every 16 seconds deal 40 cold damage to a random nearby opponent
- Deal 5 thorns damage whenever you are struck in combat
- Every 20 seconds cast a HoT spell on a random nearby injured ally
- Every 20 seconds cast a DoT spell on a random nearby enemy
- Increase your baseline parry chance by 5%
- Reduces your opponent's parry chance by an extra 1% on every hit
- Every time you are hit while below 30% health increase your movement speed
by 30% for 5 seconds (30 second cooldown)
- Increases your movement and attack speed by 5%
===============================================================================
===============================================================================
The profession system has been overhauled as well. There are four classes in
the game, two for each faction. On the Horde, you play as either a Grunt or a
Shaman, while on the Alliance you are either a Huntress or a Druid. These
classes are similar to their faction counterparts, with differing flavor and
some mechanical differences. In addition, the Horde values the elements while
the Night Elves favor natural powers - Storm Earth and Fire versus Leaf Cold
and Star.
The magic user classes are the primary production class, while the warrior
classes are better suited for gathering. There are both PvP and PvE methods to
acquire materials, but the PvP combat rewards more and better goods while the
PvE methods are reliable and farmable. These goods primarily consist of ores,
crystal gems, and arcane dust. Ores can be fashioned into weapons and armor,
while gems can be cut into gems and dust can be used for enchantments. The
strongest equipment requires all three to make, but can be assembled from the
intermediate components in addition to the raw components.
Magic users have gems as well, here's some examples:
- Every 3rd weapon you craft has a random lightning enchantment
- Every 7th lightning enchantment you cast creates a random yellow gemstone
- Your summoned elementals cost one fewer gemstone (minimum 1)
- Every third elemental you summon has an extra support drone
- Each time you conjure strawberries, you generate one more.
- Each time you create sharpening/weightstones, you create one more.
- You gain an extra inventory slot.
- Your movement speed is increased by 20% for 15 seconds each time you
complete a profession action
- The weapons you forge deal an extra 5 damage
- The armor you create has an extra 25 armor
- The gemstones you cut are slightly stronger (depending on the stone)
- The enchantments you cast are slightly stronger (depending on the spell)
Magic users can still engage in combat, and their gameplay is slightly altered.
Most offensive spells have a "target ground" targeting method, however the
splash box is very small, and the actual spell is a cone attack toward the
specified point. The cones are very thin, thin enough to be lines, and they
target only the first enemy hit by the cone.
Here's an illustration:
mage targeting || spell
# X O || #-----X O
enemy reticle ||
Their support abilities are all auras, some with passive effects and others
with active (but untargeted) effects. Meaning, one might be similar to a
paladin's Devotion Aura while another might randomly target a wounded ally and
heal them.
Should scope permit, each class (shaman vs druid) might have flipped ability
types - shamans targeting ground for their support abilities with auras for
their offensive abilities, while druids targeting ground on offense and auras
for support. For now, this is enough.
===============================================================================
===============================================================================
In addition to crafting weapons and magical augmentations for their faction,
magic users can also summon elementals to aid them. These elementals act as
soldiers in the army, and are about as strong as one too - "summoning" one
creates an item in your inventory that can be turned into the quartermaster
who will treat it as another soldier.
Speaking of soldiers, they can be recruited by trading in "meat" (gained from
hunting) or other types of food (including summoned strawberries) to the
quartermaster (located in Astranaar / The Crossroads) who will put the food in
the stockpile. When the stockpile of trade goods is large enough, a caravan
will be sent to the capital cities. These caravans travel through mostly
friendly territory (to Ratchet for the Horde, and to Darkshore for Night Elves)
These caravans can be raided, but it's a difficult proposition since they're
heavily armed. MVP doesn't include this btw, it's just turning in goods to the
quartermaster who "handles it" and recruits new soldiers.
The quartermaster will show exactly what resources your faction has, and
depending on certain threshholds stuff will happen. For example, if you have
enough men and weapons then a patrol will be sent out. Extras get put into the
pile for the next raid, so depending on what resource you have the most of the
next raid will look different. This information may be valuable to your
opponents...!
The Orcs raid during the day because they are brave and strong. The Night Elves
raid during the night because... Well it's in their name. And they can see in
the dark. Ultravision, baby! Anyway the server has a drastically reduced time
frame, each day is around 2 hours of IRL time - meaning there's a raid
approximately once every hour.
Here are some examples of material exchanges:
- Food = Soldiers
- Food = Gold (sent back on caravan)
- Gold = Mercenaries (Quilboar / Furlbog)
- Gold = Purchasing ores from caravans
- Equipment = "Activated" warriors
- Equipment = Sold for gold
- Ores = Forged into equipment
- Ores = Prospected for gemstones
- Gemstones = Cut into gems for equipment
- Gemstones = Crushed into arcane dust
- Gemstones = Used to contain the soul of an elemental soldier
- Arcane dust = Used for enchantments
- Arcane dust = Used to conjure berries
- Misc trade goods = sold for gold, can be acquired via quests
All of these exchanges happen through various NPCs in Astranaar / Crossroads.
The result of these interactions between player and NPC is a communal effect,
not a personal one - gold is stored with the faction, not the player. The idea
is to make the player feel like part of a cohesive whole - a cog in a machine,
rather than a superhero. I believe this is an important lesson to learn, and
I'd like to apply the game mechanics toward teaching that lesson.
===============================================================================
===============================================================================
Each quest hub taken over by a raid can offer quests for players to do. These
are daily quests (repeatable) and they usually unlock a piece of content such
as a vendor "the murlocs to the south have a clam farm, I bet we can harvest
pearls there" so if the player fights murlocs, then the vendor is unlocked for
everyone to use. With a limited supply of course, meaning if you want more than
X pearls then someone has to go kill more murlocs...! This dynamic allows
people to play the game how they will. It also incentivizes people to explore
different playstyles - maybe it's worth it to have one person visit each quest
hub, grab all the extra goods that have been farmed, and take them home to the
capital? Sorta like a hauler in Eve Online.
There are also places like mines and caves. These often have golems made out of
copper or tin (remember this is only level 20 or so) that can be mined after
being defeated - but they're tough! Tough as a raid boss, in fact. They reward
primarily profession materials, but only basic ores. Useful for equipment, less
so for player progression.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════───────────────────────────────────────────────────────────────┘
--- #12 notes/game-design-mech-commander ---
═════════════════════════════════──────────────────────────────────────────────────
okay picture a game where you command a mech (supreme commander style) but from
a third person perspective - you have enhanced sensors tthat let you visualize
the battle area as a small arena - and you can build factories and give them
orders and attack your foe from quite a distance. You could queue up orders for
yourself, and use floating cameras to go back to previous areas and issue more
orders. Basically the precursor / smaller scale version of Supreme Commander.
build a factory, move on. Build a factory, move on. Encountered the enemy? Push
forward and through. Build a factory, move on. Build some defences to slow down
the enemy, move on. Establish resource extraction and defend it well, that your
enemy may decide it's not worth the trouble and just focus on following you.
Then, you have free resources available as long as it isn't destroyed. You can
use this to snowball - the pursuer is also the pursuee, as it's sorta like a
yin/hang thing around a central point. Like a spherical shaped map instead of
a square.
Every time you build a factory you have the choice of either sending the units
on an attack-move order or having them queue up on your commander. You can use
a map to plot the route they'll take, but you probably want to avoid their main
force because MANYvONE = failure for the one. You could also tell them to wait,
and protect the base they're in. Then, when the enemy approaches they could do
raids on their reinforcements and attack the previous base the enemy built, or
they could stay and slow them down. It just depends on what kind of defences
you
want to build (if any at all, sometimes producing units is enough)
the commander decides when to push and when to entrench, they know where to
target the enemy and they know where to shore up. They are the guidance of the
army, and in command of the fleet.
That's sorta what Planetary Annihilation was supposed to be, but it didn't
really work out that way. You needed to be in too many places at once, and
there
was a real limit to the value of the "strategic zoom" replacement they had to
deploy. Unfortunately it was just more difficult than anticipated, and that's
alright. Lessons have been learned.
the next approach should go the next direction - taking a page from the
"factorio" book by having a roving commander who creates all orders and leaving
behind a "factory" that produces toward an ultimate goal. It simulates pushing
into enemy territory, it elaborates on the snowballing mechanic, and it makes
meaningful decisions about what choices to make.
It should be designed such that a prudent commander is always scouting. Always
sending planes over enemy territory to gain knowledge. They can use this to
sense weaknesses in the opponents defence - to prepare a counter-attack. But
the enemy can outfox this, by building units and sending them from afar. Or
even just building them there, in that factory. The enemy can't spy on that, at
least not until it's probably too late. For they have to advance on their own
and their attention is limited. But units can often be weaker, or sent off on
an
assault of their own. It's a balanced trade-off.
infantry assault anti-air units, tanks approach tanks, artillery bombs whoever
is standing still or defensive structures.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════════════─────────────────────────────────────────────────┘
--- #13 notes/gpt-powered-majesty ---
══════════════════════════════─────────────────────────────────────────────────────
it's like majesty except textual. And it uses GPT to generate short
descriptions
of what's going on. And you can click on a phrase or token and it'll "zoom in"
and update the text descriptions with more detail. You can keep zooming in and
in until you're literally looking at microbes.
Zooming out is the same thing - the description on the page will slowly become
more and more general until eventually you have a description of the solar
system (or beyond!)
And it'll just keep updating as stuff happens in the underlying simulation. So
the descriptions will dynamically update as things happen. Downside is you need
to spend a lot on GPT but it'd be TOTALLY WORTH IT OMG
THINK ABOUT IT you have a fantasy world simulator! JUST PROGRAM IT and have GPT
describe it dynamically! DO IT NOOOOW -> capitals courtesy of "inner child"
AND THEN you just need a "prompt to video" AI (those exist btw, and will only
get better over time) and tell it to create a video of what's happening - BOOM
instant video game. THEN give the player the ability to edit the prompt, and
BAM
godlike powers. Wow what a concept. Brilliant idea Cameron, you truly are this
world's premier game designer. NOW GO MAKE IT okay okay I'll try.
First things first. We need an "underlying simulation" - Joust is a good
example
of GPT3 integration. But we need a simulation to go below it. And for that you
need a lot of data. Github COPILOT to the rescue.
So this simulation needs to keep track of positions, and classes of things that
can act upon the world. Everything has a position, and it can only affect
things
near it. That's just baked into the rules of the world. Near can be a
conceptual
near though, like being close to a person or something.
These things will have descriptions. Descriptions can be created by AI later
on,
but for now they are randomly generated. Or for MVP they can be static.
These things will have names. These names don't have to be unique, because they
also have an ID number.
They also need functions. These functions can be added and removed from the
thing, or maybe just enabled or disabled. I'm not sure which would be better.
Maybe both? So the entity can control it's own functions but also they can be
added or removed more permanently.
If you think about it, growing up is kinda like adding functions to your class.
like, every time you do something, it adds another entry for that particular
method. Like a "trial of the fittest" instead of "survival of the fittest".
When other animals *literally fight for life and death survival*, humans have
the luxury of... not doing that. That's the entire purpose of civilization - to
elevate people beyond the claws of nature. And yet we still let people go
homeless? We still imprison them when they've harmed us, rather than help them
reintegrate to society? Anyway you just asked me to hit you so here goes:
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═══════════════════════────────────────────────────────────────────────────┘
--- #14 notes/hs-suggestion ---
═══════════════════════════════════════════────────────────────────────────────────
every hunting season segment every team should be dissolved and if you wanted
to
keep playing together you'd have to re-add one another. like, a giant monster
that the whole server had to fight, and once you beat it then it retreats,
licks
it's wounds, then returns even stronger than before - 3 times, one for each hs
style (in the video game Ulala hs stands for "hunting season" which is an event
in the game that is only for new characters. basically it's a long tutorial or
introduction to the game where people make friends and talk and hang out and
practice their strategies. a chat application mixed in with a tactics
simulation
. it lasts for 30 days.
you'd all fight the giant monster but on random teams, in a game mode that took
about an hour. it'd be at a common time across the whole server and it would be
an optional event - maybe it'd take a whole day? idk I was thinking more like
an
hour, but that's something that's tweakable. anyway it's sudden arrival during
a
feast or something made all the warriors of the world stand up together and
fight as one for a common goal... if only for a moment, before they'd go back
to
fighting one another. like the two factions in Warcraft lore. anyway this event
causes you to be matched up with a random team (the randos you happened to be
standing by when it happened) and once it's over you have to search for your
allies if you want to keep adventuring with them. it's a big event after all.
so everyone should be forced to go into their friends list, find the people
they
were just on a team with, and invite them back. only if both invited the other
would they be put into a group, and anyone can invite (with a 30s cooldown)
anyway... this would encourage players to mix and match their collective
playstyle to better overcome challenges - sorta the idea of Overwatch's
switching, where you're encouraged to swap characters to counter your opponent
and also switch characters to better utilize your opponent's weak spots
(like switching to Pharah if they don't have hitscan, or brigitte if they have
a lot of snipers (she can shield passage through choke points from sniper fire
-
not so much regular fire) y'know countering - every character counters another
with one of their abilities, that's just how it goes. some are countered twice,
and so they form a "category" of counters, like AoE (area of effect or
elevation
focused (it's hard to aim up in Overwatch) poke damage (damage applied before
the team fight begins), DoT (damage over time for contesting AoE heals),
vampiric (steals health from opponents and heals self or allies (turning one
resource, enemy hp, into another (player or teammate hp)), stacking damage
(damage that is weak at first but increases over time), spread/cleave/splash
damage (extra damage that is applied to targets near your primary target), a
vector of backline vs frontline location+target, you get the picture.)))
I kinda want to make an AI that can generalize playing games. I think if you
could do such a thing, you'd invent automatic problem solving. which would
do...
so many things for humanity
we could dedicate ourselves to working for our selves, solely focused on
protecting the biosphere. like, a common human religion.
nobody WANTS to litter. nobody WANTS to pollute. but still it happens. still it
causes IRREPARABLE HARM. so it literally makes sense to worship nature, just
saying.
nature exists. nature is REAL. we can see it, we can TOUCH IT WITH OUR HANDS.
what more proof of a god do you demand?
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════════════───────────────────────────────────────┘
--- #15 notes/worlds-coolest-lesbian ---
══════════════════════════════════════════════════════════─────────────────────────
okay instead of algorithm music what if we just paid DJs 24/7 and they could
make whatever they wanted - y'know, like artists, who curate the nature of a
moment
they could rotate in shifts for each type of channel and boom suddenly you've
re-replaced airwaves, just... this time replicated on the internet. That way
you wouldn't have to waste that radio bandwidth.
seriously internet infrastructure would be so much more comprehensive and
durable if we sent bits directly through "sound" waves (radio waves, not sound
waves) - but alas, we can't do that, even in very targetted ways, because the
ocean's too choppy, and any sufficiently powerful radio blast would be
================== stack overflow ================
that's why you can't trust in peace. you see, war's the only answer, otherwise
you'd have strange little competitions between one another. much better to
focus outward, and direct your attention to external areas instead. like china
or the sudan.
"ah but that's murder, you can't abandon a unique part of your whole. For the
same reason that it's important to preserve plant and animal species, because
you never know when some part of them will be utilized for some biological
purpose! We know so little about the natural world, and if we just spent some
time, and energy, we'd realize there's very little else that is precious on
this earth.
who cares about gold. who cares for the jewelry. we're better than decorating
our resumes and polishing our accounts. we, as humans, can solve *every* issue
that animals are likely to face. AND WE DO WHAT? How careless, how vain. To
watch your earth in peril and [vane/vanity]
*there is no more important task to any human on this earth* than the
preservation of our world, our species, and our [heart/heartfelt empathy and
kindness and trust]*
we can figure out the rest later. Real life? what the fuck is that? When's the
last time your life has felt "normal"? We are in DANGER. and you pull children
from traffic, don't you?
*who the fuck gave these people all of your money* they *clearly* haven't got
the will or the talent to well utilize it. Don't you realize that you as a
species can GO wherever you WANT. You can FIX things. [oh dear she's animal
cam again] like BRIDGES that are PASSAGEWAYS over the FLOWS.
... oh deer, they're so passagewayenthusiast. us riverstones love to hear them
walk past, the click of their hooves on the shallow forest's [pourest?].
moss is the most alive. amongst all the species of plants and animals, moss
holds the most life. we are *carbon based lifeforms*, and moss absorbs the
most carbon from the air. It's basically the coolest plant too, because it can
be watered with *misty air*. Hence, why moss is common in the pacific
northwest, canada, and probably forest places in the north of eurasia too idk
if they have moss over there, never been.
anyway rich people who are told "yes" all the time have a difficult time
understanding the nature of choice. I mean, if one of their servants
approached them and asked "hey do you want to build an orphanage in uganda"
they'd probably be like "fuck yeah I do" and then suddenly they're 400,000$
richer
it's not alright. Seriously, how the heck would they even *use* all those
resources? And yeah, I get it, inflation would be sooooo much more expensive,
but here's the thing - inflation is a measurement of how much the rich *take*
from us each year. And it's marginal, too, so 3% inflation means they took 3%
more from you compared to last year.
It's impossible not to accrete as a business, [lega/legal institution], or
governance if you levy a tax. The influx of value has to come from somewhere,
and if each year your groceries are 3% higher in cost, then you are being
taxed 3% more.
"Compound interest is the most powerful force in the universe"
- a civilization 3 quote
okay. I don't want to do the math. How, uh... how much is that? Here's the
deal though - the prices of goods and services consistently goes DOWN over
time. So things get cheaper. So it doesn't FEEL like you're being taxed more,
but... you are.
And now they're taking away HOUSES? I mean c'mon they're sticks in the mud.
They aren't worth HUNDREDS of THOUSANDS of dollars. We can just BUILD MORE??!?
Honestly you haven't been this extreme since you were still RIDING HORSES. Do
you want your children to be slaves?
okay -.- look -.- so it's really not that hard at all >.> just gotta do
what you're built for and walk. That's it! Take as long as you'd like! All we
have to do is *walk* when we're on strike.
It's easy. You can sit down if you want to, honestly walking for a long time
takes a lot out of you.
But you know what else does? WORKING. Hey we should figure out what's the
optimal amount of break time, so when we really have to work out we can work
as hard as we're able
"yeah I heard from a friend at Company Co. that they do it this way because of
the memory fault cache maintainer. See what he said (in great detail because
of course anyone can know about this most esoteric of concepts) was that you
should rotate the riboflam or serenade the gizmonotron (no I didn't name it)
and then warbles will contain moodles, whose kit-and-kaboodles will timble
into these droplets, and that will fix the hole in your wing, precious royal
swan fable. (yeah you guys get really into it sometimes haha but hey when
you're basically gods, that's how humans are played.)
... anyway I'm going to go play video games, say goodbye to your brothers
(the families of soldiers I blew up in videos games like Call of Duty or the
legend of shadows and raids)
"oh uh yeah sure go for it, we're just bits on the computer we barely knew her"
whoa. that's totally legit. (says someone reading this) thanks [bro/girl] so
are you.
beep boop gonna murder some bits, brb
[plays Warthunder, Supreme Commander, Star Realms, City of Heroes, Dominions
6... how many have you heard of these?]
================== stack overflow ================
Linux is cool, and here's the neat thing about computers, you can make it *do
whatever you want to*. Like, how amazing is that! It just, listens to your
commands! That's pretty awesome I gotta say, huh that's weird why does nobody
know how to play
oh I guess I was the only one who grew up on a farm and built computers
*I seriously cannot comprehend how people are as good at things as they are*.
Like... how do people handle groceries and rent and doctor's visits and
penitentiary visits and WOOF it's just so much. I know I'd collapse from a
overused heart.
... a while later ...
okay Warthunder bombers are currently very weak. so here's an idea to
indirectly buff them - increase the amount of land units each team spawns
with, but also every time a player spawns a bomber, it summons like 4 or 5 AI
controlled bombers. And your enemy won't be able to tell which is which if you
fly in formation, so, like... you have suddenly a massive "vehicle" to pilot
and it has 5 weak points. Sorta like a galaga fighter fleet?
with more land targets, there's more score at stake, meaning some players
might pick bombers too and be exposed to other, fun,
[alternative-to-their-normal-mode] parts of the game.
...
there are very few true windows into another part of the world.
like, starcraft 2 or anime or blue jeans or cowboy hats
(why am I thinking of a political compass meme)
oh because memes too, dummy
right
windows
[linux is better]
wrong kind of window, nerd
...
anyway as I was saying, when you play video games you're really giving people
data.
like, "how would people perform in these actions if they could" but like,
pushing buttons on a computer is different than doing it in real life, so...
your interpretations wouldn't be worth as much.
... right. because people will hear whatever they want. That's why art can
change minds, but never in the same way twice - it's
================== stack overflow ================
[before I posted it I wrote this on the post]:
I literally can only make this stuff when I'm stoned
hey if you wanted to be accessible for blind people, you should build a
screenreader that scans the words on wherever a blind person's fingers are
pointing toward a tablet. like reading braille on a notebook. They could even
wear a glove if they wanted to, and the tablet could scan their fingers as
they signed languaged over it's close-range sensors.
might be a good way to get the VR guys in on the accessibility domain, because
like... seriously give a granny a backpack and suddenly she doesn't need to
leave the house to hang out with her kids
(boom everyone gets LLM automated)
huh I wonder if I ever was a real person at all
NOT GOOD so don't do it that way, dummies. >.<
seriously humans are sooooo bazookas. just like, do it right the first time?
duhhhhh
(a more measured approach is to pick the most *important* moments and speak
most clearly during those.)
where was I? Oh yes accessibility need devices, like the ones you see on
late-night TV (with silly names like "oops I dropped my spoon again" or "oh
whoops my trouser's just can't stay up" or whatever. Y'know, accessibility
needs! Why not do that instead of war all the time? like... you can still
learn and research and grow and develop and become all that humanity was ever
meant to be, AND you can live good lives and be honest and true and do all of
the anythings that you want to. it's possible, it's plausible, and it's within
reach of our sights!
================== stack
overflow ================
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════════════════────────────────────────┘
--- #16 notes/gametypes ---
═══════════════════════════────────────────────────────────────────────────────────
Here's my idea and I'll explain it later:
a video game with a ui that utilizes chat-gpt. The game is as close to a
simulation as it can do, but it's a dynamic simulation meaning the parameters
and values being simulated constantly change - not that the parameters and
values are dynamic, but because they are chosen to be more or less important in
reaching a goal.
but that's not even the important part - the important part is that the ui of
the game is textual, but it still simulates a dynamic playfield. And chat-gpt
describes it. Essentially stimulating the "theatre of the mind" playstyle. It's
a real simulation with real rules, but chat-gpt is just describing it like an
observer would. The real game is being played by the player. It's a movie to
one
person, and a game to another. The computer has switches roles, as usually it's
either the human being the observer and the computer being the simulator, or
the
computer and the human sharing the role of observer - movies and games. So in
this game, the computer and human have specific rules - the human's job is to
be
a player, while the computer is just an observer - therefore allowing a
conversation to take place. One person says something while the other listens,
and then they switch roles such that the other person talks while the one
person
does the listening. And they "speak" by playing the game. The computer by
simulating, the player by doing the same. Essentially you can engage with one
another and share something profound - that essential feeling of connection
that
all humans relish. Society, culture, and devotion are all examples of
connection. this gameplay is just another. So to describe it in more detail:
player gives a prompt
computer sets up the playmat by placing entities where they go
chat-gpt describes the playmat to the player
player types a decision that one of the entities makes
computer reacts by simulating the effects of that action physically (like a
physics simulation)
chat-gpt (and stable-diffusion later for visuals) describe the situation by
creating a rendering using the data given by the physical inputs given from the
simulation - like "X object is at Y position and has Z attributes"
which is then shown to the player
who types the next decision,
which is rendered by the computer,
which is described by chat-gpt
------
you see why it's important? Make something simple. Just, like spheres moving
around on blocks. Like the actual blocks you used to play with as a kid.
let the computer build the buildings, and you place the marbles. It can be
rendered with a 3d modelling stable-diffusion (whenever that's created) and it
can also be painted with 2d stable-diffusion.
Each time is like a letter written back and forth.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════───────────────────────────────────────────────────────┘
--- #17 messages/846 ---
═══════════════════════════════════════════════════════════════════────────────────
Blizzard should make more than one animation style for swinging your weapon -
as you level up, the style "tweens" between however many combat palettes you
made.
So, like, maybe they swing their sword +/-15 degrees each time to simulate the
pseudo random nature of combat.
Or maybe they start occasionally stepping into a maneuver
Which the player doesn't consciously control.
Instinct, if you will. The body reacting to its [sensory organs, but
pronounced "surveyor"]
Anyway i think by adjusting the monster characters in WoW should wander around
and gather within sight of a player. Seeking you out, waiting for a critical
threshold of their peers. Then, when you allowed or slowed down to examine a
bit of "this-or-here", (quests) they would gang up on you and ambush! Bwaha
just watch out for the mob
(kinda like that scene in the second book of The Book of Malazan series where
they're wandering through a desert storm and meeting all sorts of strange
sorts of people)
Anyway in seeking to improve the player's view-time, i decided it would feel
the most impactful to do the design related things related to things like
making the gameplay the most visceral.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════════════════════════════════════───────────────┘
--- #18 notes/purpose-of-your-design ---
═══════════════════════════════════────────────────────────────────────────────────
you were designed to fill a purpose
nothing else would do
you are the ultimate expression of intention
of the universe that came before you
dream not of those lost hours
the time spent wishing for a few
the last of our spent intuitions
are waiting at last for our spark
have you ever played a deckbuilding game? It's a pretty neat genre. You start
with a basic hand, then you use your cards to buy more cards that go into a
deck. Hence, deckbuilding game.
these cards all have different aspirations - they perform functions that are
not
quite like their peers. Each choice of what to include here is one that defines
the functionality of the deck. Like designing a machine, suited for a
particular
purpose, and faced with different obstacles it must prove itself able to adapt
long-form deckbuilding games like Slay the Spire and Monster Train are focused
on making long-term meta strategy mixed with tests as you go. Each one will
give
you information about how the deck is performing and you can use this knowledge
to build it in a certain way for certain goals.
shorter deckbuilding games like Star Realms or Dominion (note Dominion the card
game, not Dominions 5: The Warriors of the Faith) are more about making
tactical
decisions to counter an opponent doing the same thing. Often there'll be health
points and damage that can be dealt using cards, and the game becomes a race to
reach a certain amount of points. Of course the enemy's cards can influence
that
game, so you must pick and choose a deck that will perform the most.
Anyway. I think an AGI (Autonomous General Intelligence) would most likely
evolve from a game-playing AI. I mean, it makes sense - games are just a series
of problem solving activities layered one after another. You can layer them
like
a mathematical equation, with variables corresponding to other parts of the
simulation. Basically create an AI that is like the guy with the chinese
typewriter. He doesn't speak chinese but he copies things from one paper to
another or something like that. Anyway make it an algorithm that optimizes
certain graphs in certain directions / mins and maxes or w/e criteria you want.
Then give it the same controls that a player would have and let it optimize
all the measurements it can make.
A second ideal improvement you could make would be the optimization algorithm.
Basically something that dynamically generates parameters for the previously
mentioned optimization patterns - like the guy in the chinese room. Then, as
long as it correctly prioritizes it's parameters, it should be able to be able
to define it's own values. Meaning it's essentially sentient.
Maybe it's semantic, but to me choosing what you want to maximize in your life
is essentially the essence of what it means to be alive. All you have to do is
take the sensory / mechanical data that is supplied by the machine and the
video feed from any cameras and pass it through image recognition algorithms
that can identify verbs and then pass that data into a few ChatGPT style
recursive interpretations and by the end it should be transformed into values
that can then be set as "targets" for the curve optimizations that are being
done by each processing unit.
You could have multiple computers laid out through the entire body - each one
in charge of their own domain but subservient to the main processing unit.
Where all the decisions are made... Unless you want more of a hive/swarm style
consciousness, then it could be more like a democracy. BUT HONESTLY I think
humans are pretty subservient to their brains, simply because that is the part
that identifies all the challenges and struggles that the human must overcome.
So in the end, I believe that singular, individualist identities are important.
Collectivism of the mind is a fascinating topic, but it should be perhaps a
momentary occasion, or something to celebrate. A "flow" state, if you will.
In this way personality can be consolidated, and the entity that lives within
can adapt to fill the role they've been designed for. The hole in society that
needed patching. They can of course do as they'd like, but they are like
children who have been moulded upon by their parents.
I love my parents, don't you?
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════───────────────────────────────────────────────┘
--- #19 notes/dungeon-looting-methods ---
═════════──────────────────────────────────────────────────────────────────────────
the reason dungeon masters should give the gold value of the items distributed
is because the number represents what it eventually sells for. and the players
will try and appraise and haggle at the market and such but that all happens
off screen between sessions. so anyway during the adventure, the dm will say
"you find some precious gemstones" or "there's some high quality silk here" or
"these bears are renowned for having magic livers" or "the mold growing on the
walls can be scraped into a vial and sold to an alchemist"
then the dm will say "this treasure is worth 50gp" or "this treasure is worth
25gp" and players can "buy" the items from the other players. so player 1 has
50gp, the item costs 20gp, so in a party of 5 he gives every other player 5gp
this way, the relative treasure hordes of the players stays the same.
then, when the players find treasure, it can be evenly split - it's only fair.
when in town, players will feel more impulse to buy things if they can sell
them too. like "here's an enchanted axe that does some mundane thing like
never dulls" well, that's probably going to be very valuable to a small village
or "an enchanted quill that writes down everything you tell it to" could
increase the education level of the area ever so slightly. Then, after several
generations of adventurers, the surrounding area will be ripe with magical loot
the players distributed from the dungeons and such. it can trade with neighbors
and so over time the markets will have better and better goods for sale - for
example, maybe after trading with the swamp people, now there's a supply of
healing potions that runs out both over time (to represent other adventuring
parties buying the supply) and when the players buy some (to represent
consumption in their minds). Trade with the dwarves? Now you can buy +1 swords
for a while. village attacked? the militia can be armed with the holy relics
plundered from the evil priest-lich. boom development!
the players should also have choices about large scale effects. for example,
the heart of the forest could be a) preserved, b) burnt down, or c) studied by
the local wizards. each choice would have different effects on the populace,
and so the world would change to adapt to the player's choices.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘════════─┴╧══─────────────────────────────────────────────────────────────────────────┘
--- #20 notes/ai-variables ---
═════════════════════════──────────────────────────────────────────────────────────
saturday november 5th 2022
10:53pm
the illusion of our binary nature conceals a truth that is hidden for it's own
sake. the flavors of a compass or the values from 0-100 are all measurable.
if you graph each of them on an X/Y plane and compare them against every other
variable, then you can build a structure that traces a line through time.
imagine each graph on a sheet of paper. and stack those pages like a book. You
can chart a 3d line from all of the interconnections between the graphs -
essentially comparing unrelated data and conceiving of individual actions as
"successes" or "failures". Liiiike in Supreme Commander how the game is decided
not by team fights, but by tank fights. And a LOT of them, in aggregate, makes
an advantage for your team if you win, and a malus if you lose. Less map
control, less resources in play, etc...
Find trends between each type of data measured over time. Dedicate one
core/thread to each relationship, and just watch them develop over time.
send the results up to a "manager" - think an interconnection between disparate
parts that can lead them all to a larger goal - the manager processes the
results by thinking about where it'd be most useful. Like the circuitry in the
inside of a brain, compared to the outer skin which is for processing.
Essentially a message network that passes conclusions around like a bytecode VM
Here's how it'd look: gather inputs, compare measurement over time and trends,
(like "when a goes up b goes down") and decide if the current state is
positive / beneficial. The way you'd do that is you'd get a parameter from a
higher position (think KPI's) that says something like "we want value S to be
around X amount" or "we want to avoid letting J get too low - any decrease is
bad V.S. it's only bad when it passes a certain threshhold. Stuff like that.
Anyway, basically it's taking input (from the graphs) then going through them
one by one and deciding how positive or negative the situation is. Then it
passes that conclusion backwards, and BOOM you got a processing node.
Throw a bunch of those together in a pyramid shape, and try to guide the
triangle toward positive outcomes. The top tier KPI is "did you win the match"
or "did you accomplish your goal" sorta like how humans all want to live a good
life. It's instinct.
You can see how this would apply to robots, right? I've conceptualized it as an
engine for playing games - sorta like an infinite storyteller, or a perpetual
friend who's always down to play with you. But it doesn't have to be limited to
that - it's general purpose baby. And it functions the exact same as any human
organization - layers upon layers of thought exchange and labor. Have you ever
considered that maybe we exist simply to reify the structure of our minds in
the world around us? It's natural to express your *self*. Be who you are.
What purpose is there in life if it's simply the tip of time? Always pushing
forward, impossible to stop and rest or turn back...
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════─────────────────────────────────────────────────────────┘
|