Avatar billede zpliff Nybegynder
23. oktober 2003 - 21:26 Der er 13 kommentarer og
1 løsning

ASP Udfordring til gode hjælpere - Duel system

Hmm... Hajsa
Jeg har en af dk's største Harry Potter sites.
Og nu har vi pillet den ned, fordi vi vil lave en ny version!
Det jeg synes kunne være godt er et duel system, hvor brugerne kunne kæmpe mod hinanden!

- - - - Baggrunds info ::

Et troldmands duel system!
Her skal wizard(1) kunne sende et brev til wizard(2) og så skal wizard(2) kunne afslå eller acceptere. Hvis han afslår sker der intet end den slettes og der bliver sendt et brev tilbage til wizard(1) om at han har afslået.
Men HVIS wizard(2) acceptere; så skal der ske dette:
At de mødes og så skal kampen ske.
(i asp sprog:)
Så skal der ske det at når wizard(2) acceptere så skal den generere hele kampen så der faktisk kun er tekst tilbage.
Altså på f.eks. battlefield.asp siden.
Her skal der så stå dette i HTML:

wizard(1) står og venter på wizard(2) ved en høj bakketop.
Random.fuktion så en af dem starter - fifty-fifty:
wizard(1) angriber:

(Battlefield siden kan f.eks. se sådan ud)

wizard(1) angriber wizard(2) med 23 i skade!
wizard(2) angriber wizard(1) med 4 i skade!
wizard(2) er hurtig og får en chance til, og skader wizard(1) med 7 i skade!
wizard(1) angriber wizard(2) men han afviger!
wizard(1) er hurtig og får en chance til, og skader wizard(2) med 24 i skade!

wizard(2) falder om!
wizard(1) vandt!

[wizard(1)'s ser så:]
Du har tjent 32 guldmønter!
Du har fået +16 i erfaring!
(måske level op)

[wizard(2)'s ser så:]
Du tabte kampen og mistede 32 guldmønter

------------------------

Dette er bare lidt info om hvordan det KAN komme til at se ud.
Angrebene, afvigelserne, og selve skaden skal beregnes ud fra Styrke, level og våben (stave)

...MIT problem er:

At jeg ved ikke helt hvordan jeg kommer igang med de random funktioner, og hvor den henter data fra en database, hvor den så beregner ud fra personernes; level, liv, styrke, forsvar og våbens skade:

Altså også de random funktioner hvor de skiftevis angriber, og randomly afviger angrebet alt efter deres forsvar! Og at den efter hver angreb tjekker spillernes LIV ... if life = "0" then eller noget i den stil!

......nogle der har nogle ideer eller måske en lille løsning til noget af mit problem...

ville være rart :D

/ kontakt:
/ Sig til hvis i vil kontakte mig privat for mere info :)
Avatar billede zpliff Nybegynder
23. oktober 2003 - 23:29 #1
ved godt at man kan bruge alla:

<% sql="SELECT * FROM medlemmer order by nr desc"
Set RS = conn.Execute(Sql)
nr = rs("nr")
Randomize
intChoice = Int(Rnd * nr ) %>
<% sql="SELECT * FROM medlemmer WHERE nr=" & intChoice
Set RS = conn.Execute(Sql) %>

OSV...man kan jo selv lave den om...men plz da...kom med lidt ide'er
Avatar billede Slettet bruger
23. oktober 2003 - 23:45 #2
nu er det jo ikke helt småt dit fine projekt.... men måske du skulle få det hele ned på noget papir først, altså hele konceptet med måden det skal udregnes på m.m. så der ikke herskes tvivl om dette.

kan desvære ikke hjælpe dig gratis med et projekt i dette omfang, da dette simpelt hend er for stort. men små spørgsmål ka man jo altid besvare...

det lyder da i hvertfald som et spændende projekt.

mvh.
Questis
Avatar billede The Real Yoda Juniormester
24. oktober 2003 - 00:31 #3
1. man skal aldrig pille et site ned, før afløseren er klar.. det er en meget meget dum ide..

2. for at lave et angrab, skal du:

definere hvad max skade for det angreb vil være.
definere hvad min skade for det angreb vil være.
så tager du et tilfældigt tal derimellem. det er din evt skade.
derefter beregner du hvor stor chancen er for at blokere et "slag"

hvis ikke der blokeres gives der skade.. så er det den næstes tur
Avatar billede zpliff Nybegynder
24. oktober 2003 - 12:18 #4
enig questis:

men beder ikke om en komplet løsning...beder om ide'er til hvordan jeg skal lave mine random ting...

therealyoda:
1: lad mig om det :D - har fundet ud af det var lidt dumt!
2: jamen det ved jeg! prøv at skriv det i asp istedet...bare en eksempel kode agtig....

1) hvis man har et våben, som har damage: 7-9 ... hvordan finder den så 8 tallet? kan ik helt huske det
2) chancen for at blokere, er vel en givet procent, alt efter styrke, modstanderens forsvar osv....hvordan gør man så det?

[Det jeg som sagt beder om, er IDE'er...ikke en komplet løsning til mit site, og lad vær med at sige jeg skal gi op....for det vil jeg ik....vil da lige prøve]
Avatar billede Slettet bruger
24. oktober 2003 - 12:23 #5
som sagt skal du lave en komplet defination af hvordan ALT skal regnes ud og hvilke faktorer der skal indgå i udregningerne, for at vi kan give dig nogle eksempler, men det er jo ren matematik, du kan tænke det som, og direkte oversætte til asp, men når du har nogle konkrete eksempler, er jeg da villig til at hjælpe dig med nogle småting.

mvh.
Questis
Avatar billede zpliff Nybegynder
24. oktober 2003 - 12:29 #6
hmm ok.. men det ville jeg jo bedst gøre ved at prøve mig frem, hvor der er 2 brugere i en database osv....
Og alle oplysningerne ligger i forvejen oprettet...f.eks.

Har da nogle notat-papirer, som jeg sad og lavede i toget....men....

Du vil ha at jeg kommer med en 10-siders lang beskrivelse af hele min ide?...hehe synes jeg lavede ok meget info i #1 indlæg....men...ok.. kan da prøve på nogle ting
Avatar billede Slettet bruger
24. oktober 2003 - 12:33 #7
om det lige bliver en 10 siders lang afhandling ved jeg ikke ;O)

men det jeg vil have dig til for at du får det bedste ud af det, er at tage hver enkelte faktor og få skrevet ned hvad den kan, hvilken rolle den spiller og alle de mulige udfald den kan have, endvidere også i sammen spil med andre faktorer....

dette vil gøre at der er taget højde for alle faktorer når det skal udvikles, og være langt nemmere for dig selv at udvikle det. uden for stor en fejlmargen...
Avatar billede zpliff Nybegynder
24. oktober 2003 - 12:36 #8
ok...vil jeg da lige lave så... brb in 2 hours :P
Avatar billede The Real Yoda Juniormester
24. oktober 2003 - 13:24 #9
For at tage et tilfædigt tal mellem to definerede tal, skriver du :
Int((MaxDam - MinDam + 1)*Rnd() + MinDam)

Den vil så finde ud af hvor meget skade der gives.

jeg vil mene for at beregne "chance to block" at der skal du bruge de to spilleres styrke, samt de to spilleres DEX.(hvis du har den )
du kan eks beregne det således..
AtcStr = 5 'angriber styrke
AtcDex = 8 'angribers dex
DexStr = 4 'forsvarende styrke
DefDex = 9 'forsvarende dex

'der er 50% chance for at slå rigtigt.
ToHit=50

'hvis angribes styrke er større end forsvarers styrke, så er der 75 % chance for at slå rigtigt, ellers er der kun 25%
if AtcStr>DefStr then ToHit=ToHit+25
if AtcStr<DefStr then ToHit=ToHit-25

'hvis angribers dex er større end forsvarendes dex, så læg 25% til chance to hit, ellers fjern 25%

if AtcDex<DefDex then ToHit=ToHit-25
if AtcDex>DefDex then ToHit=ToHit+25

'du vil så her have 0,25,50,75 eller 100 % chance for at slaget "går ind", og så er det jo bare at tage en lille checker

Hit=Int((5 - 1 + 1)*Rnd() + 1)
Hit=Hit-1*25

if Hit<ToHit then response.write "ramte ikke (0% skade)"
if Hit>=ToHit then response.write "ramte rent (100% skade)"

'sådan kunne det EVT. laves..
Avatar billede zpliff Nybegynder
24. oktober 2003 - 14:28 #10
OK fedt!
Skal jeg nok kigge på Therealyoda!

Ellers kan i sætte jer ind i systemet her:

http://www.potter-info.dk/hogwartsonline/hogwartsonline.dk_duelsystem.txt

Der er ingen dex, men det ser godt ud...selvom jeg føler mig lidt dum, for det der <mindre, >større, penge-pris osv. har jeg brugt i mit point system og de forskellige butikker!

men det gav mig lige lidt inspiration der TheRealYoda....nice nok!

men tjek lige det jeg har skrevet....hvis i så kan sætte jer lidt mere ind i selve systemet!
Avatar billede zpliff Nybegynder
26. oktober 2003 - 19:58 #11
the real yoda ::

hva så med det loop noget? ....skiftevis tur....det skal jo ik være i databasen...eller?
Avatar billede The Real Yoda Juniormester
26. oktober 2003 - 23:15 #12
du laver bare en

do while AtcLiv>0 and DefLiv>0

'angribers angreb
if AtcLiv<=0 and DefLiv<=0 then exit do
'forsvars angreb
loop
if AtcLiv>0 and DefLiv<=0 then response.write "angriber vandt"
if AtcLiv<=0 and DefLiv>0 then response.write "forsvarer vandt"
if AtcLiv<=0 and DefLiv <=0 then response.write" uafgjort"
Avatar billede zpliff Nybegynder
07. december 2003 - 20:20 #13
niice man....tak
Avatar billede The Real Yoda Juniormester
08. december 2003 - 03:15 #14
Det var da skam så lidt :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester