Nekromanti [More then Human] - Strids-app; arbetstråd

krank

Lättkränkt cancelkultur-kommunist
Joined
28 Dec 2002
Messages
36,181
Location
Rissne
Veckorna innan nyår började jag fundera på att bygga en app för att hålla reda på saker och ting i strid. Volt, som More than Human bygger på, är egentligen hyfsat enkelt men om man vill kunna köra med att SL sköter all mekanik dolt så blir det ganska mycket att hålla reda på.

Så; dags att putsa upp de gamla programmeringskunskaperna. Och eftersom jag gärna vill ha förslag och kritik skapar jag såklart en tråd där jag gaggar om saken.

Min tanke är att bygga det här i inkrementella steg. Först och främst vill jag bygga en enkel tärningsrullare för Volt/More than Human, där man fyller i färdighetsvärde, svårighetsgrad(tröskel), huruvida man använder sig av Tur-regeln, och får ett resultat. När den funkar går jag vidare.

Ett voltslag går till såhär:

- Slå 2t20.
- Om någon av dem visar ett värde som är högre än tröskeln men lägre än eller lika med egenskapsvärdet så lyckas man.
- Den lyckade tärningens värde är hur bra man lyckats. Om båda tärningarna lyckades så används det högre värdet.

EXEMPEL: Tröskel 4, egenskapsvärde 12. Tärningarna visar 6 och 19. Resultatet är "6 lyckat".

- Det finns en "tur-regel" som är frivillig. Använder man den så innebär svart 20 alltid att resultatet är misslyckat, och svart 1 innebär att vit kan vara lyckad även om dess värde är högre än egenskapsvärdet.

EXEMPEL: Tröskel 4, egenskapsvärde 12. Svart visar 1, vit visar 19. Resultatet är "19 lyckat".



Hittills har jag byggt ett par javaklasser, som programmeringskunniga (eller bara allmänt nyfikna) gärna får kolla på:

Tärningsklassen:
http://snipt.org/BHid0

Resultatklassen:
http://snipt.org/BHie4

Lite simpel testkod:
http://snipt.org/BHif2

Några anteckningar
- Nä, jag vet att tärningarna håller reda på sin egen färg helt i onödan.
- Tärningar rullar sig själva om man inte säger åt dem annat.
- Resultatet skapar allt det behöver alldeles självt.
- Man kan som synes ange argument när man skapar resultaten på alla möjliga sätt och i olika kombinationer. De man använder mest är level och threshold, möjligen att man säger att man inte vill använda luck-regeln. Sedan KAN man stoppa in värden för black och white också; om man inte vill att programmet ska slumpa (för purister som vill höra plasten rulla) eller vill testa systemet.
- Jag övervägde att bygga en ResultFactory-klass istället, pga att många olika argument kan anges i olika kombinationer, men jag iddes inte.


NÄSTA STEG: Bygga en android-app som använder sig av de här klasserna. Bör kunna vara redo innan slutet av Januari.
 

krank

Lättkränkt cancelkultur-kommunist
Joined
28 Dec 2002
Messages
36,181
Location
Rissne
78 visningar? Då fortsätter jag skriva, även om jag inte fått några svar =)

Jag har gjort otaliga skisser på strukturen för den färdiga appen, men också identifierat några konkreta steg, för att få en användbar app så tidigt som möjligt:

1. Tärningsrullar-app.
2. Anfallsslags-app. (Man kan skriva in stridsvärden för anfallare och försvarare och låta appen räkna ut om man träffar, hur bra, och vilken skada man gör).
3. + lista med färdiga vapen och rustningar att välja mellan.
4. + lägga in kombattanter plus vapen, dvs man kan säga att X ska använda vapen Y mot Z.
5. + spara rollpersoner och SLP:er separat, förbereda encounters, etc.

Så; första steget är en enkel tärningsrullare. Jag har byggt en prototyp för interfacet:



I exemplet har någon som har 13 i FV gjort ett slag med tröskel 2. Svart tärning visar 13, vit 2. Resultatet är 13 lyckat.

Jag ska rensa upp lite; framför allt ska "luck" förpassas till en "options"-ruta nånstans. Om jag känner behov av att spara utrymme finns flera kandidater; rutorna som visar svarta/vita tärningens resultat kan läggas till höger om "13 lyckat"-rutan, vars text kan förminskas. Dessutom kan hela resultatdelen förpassas till en separat skärm, från vilken man sedan kan trycka sig tillbaks. Eller så kan svart/vit tärnings resultat bara synas om man klickar på "13 lyckat". Och så vidare.

Och sen ska alltihop ges kod så att det faktiskt händer grejer när man trycker på knappar och drar i spakar.

Jag ska också lägga upp min källkod på GitHub...
 

krank

Lättkränkt cancelkultur-kommunist
Joined
28 Dec 2002
Messages
36,181
Location
Rissne
krank said:
Och sen ska alltihop ges kod så att det faktiskt händer grejer när man trycker på knappar och drar i spakar.
Har påbörjats nu; koden som finns på GitHib inkluderar att de där handtagen och textrutorna för Value/Threshold är kopplade. Dvs drar man i reglaget så ändras textrutan, skriver man siffror i textrutan ändras reglaget. Det finns dessutom viss sanity check; reglagen går mellan 0 och 32 (32 är högsta värdet man slår mot i >Human), men man KAN skriva tal upp till 99 i rutorna.

Nästa steg: Själva rullandet. Borde inte vara alltför jobbigt även om jag kommer att behöva fippla om ett par grejer som jag glömde i VoltResult-klassen.
 

krank

Lättkränkt cancelkultur-kommunist
Joined
28 Dec 2002
Messages
36,181
Location
Rissne
Senaste versionen av källkoden är 100% funktionell. Alltså, man kan välja värde och tröskel och rulla tärningar.

Appen har också översatts till svenska, så har man sin androidmobil inställd på svenska så blir appen det också.

Här är en länk till första riktiga releasen; bara att installera och köra:

https://www.dropbox.com/s/ous2uo0kjhnpc81/MoreThanHumanCompanion-release.apk

Kvar att göra med tärningsrullaren innan jag ger mig in på nästa steg:
- Se till så att tangentbordet inte dyker upp direkt när appen startas.
- Göra en separat liggande layout.
- Spara resultaten när man byter mellan stående och liggande.

- (Eventuella "animationer"; t.ex. få resultaten att blinka till när de uppdateras)

EDIT: Kunde inte riktigt släppa det hela, så jag fixade de tre grejer som behövde fixas. Det blev lite krångligare att det behövde vara pga att jag i framtiden vill kunna göra saker som att manuellt ändra tärningsutvall efter att slaget gjorts (i.e. fuska) och lite sånt. Men nu är källkod + release-APK'n uppdaterade till senaste versionen.
 

krank

Lättkränkt cancelkultur-kommunist
Joined
28 Dec 2002
Messages
36,181
Location
Rissne
Ape Of Wrath said:
Öh hur bär jag mig åt för att installera den på min iFån?
Tyvärr funkar den inte på Appletillverkade prylar. De kräver en massa pengar plus att jag isf skulle behöva lägga ut den via App Store. Plus att jag skulle behöva lära mig programmera iPhone-appar.

Så iPhone- och iPadanvändare får helt enkelt vara utan.
 
Top