Welcome, Guest. Please login or register.


Author Topic: Enterball (Read 99676 times)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Enterball
« Reply #120 on: 2012.December.12. 16:30:21 »
Quote from: Lacika
Akkor én hiába játszottam ugyanaz a játékot snapshot-okkal...?
Igen ha örökélettel játszunk, vagy snapshotokkal haladva, akkor nincs meghalás, nincs név beírás, nincs hiba.

Quote
Ep-n ezzel a hibával találkozott valaki?
Igen, most raktam be a képet :-) de itt van snapshotban is.
Anno mindig örökélettel játszottam, így nem volt hiba.

Van egy kisebb hiba is (ez már meg van), ugyanitt, hogy a kép bal felső sarkába szemetel, ez EP-n az E betű miatt nem annyira látszik, Specball-ban a rövidebb szöveg miatt feltűnőbb volt.

Offline Pgyuri

  • EP fan
  • *
  • Posts: 156
Re: Enterball
« Reply #121 on: 2012.December.13. 12:52:44 »
Üdv,

Íme, amiből az egész SpecBall ki nem adás indult, vagyis a mentett hibakép. Mivel a ZX átírást teszteltem és abban kellett a hibák után kutakodnom, így fel sem merült a gondolat bennem, hogy már az eredeti játék volt a hibás. Sajnos ismét egy remek példa az Enterprise-ra kiadott hivatalosan forgalmazott játékok csapnivaló színvonalára. Nem mintha Spectrumra nem tolongtak volna a hibás, befejezhetetlen játékok - kezdve a Jet Set Willy híres, a számítógépes világban először kiadó által publikált javítási kódjával - de az arány jobb volt, mert többszáz játékra jutott egy híbás, míg itt sokkal magasabb az arány. A tesztelés soha nem volt a programozók erőssége, egyszerűbb volt ráfogni, hogy nem lehet hibátlan programot írni.

Lehet, hogy meg leszek kövezve, de a falnak megyek attól a koncepciótól - és előre is bocsánat Zozotól, gecotól és a többiektől - hogy játékprogramokban feltörés után bekerüljön az örökélet, örök energia bekapcsolására vonatkozó kérdés. Ez régen C64-en volt divat, ott se értettem, miért jó, de tény, hogy amíg nem volt internet, addig egy relatív nehéz játék sokakat foszthatott meg a végigjátszás élményétől, de ezt a marhaságot átvenni hatalmas baklövés volt.
 Aki a játék végére kíváncsi, most már megteheti ezernyi módon, aki pedig játszani akar, annak nem kell ez a POKE. Tudom, a döntés a kezemben van, mert még nyomhatok saját akartomból NEM-et, de a lehetőség megjelenése már eleve kitartás csökkentő tényező, hiszen könnyű 5 próbálkozás után ráfogni valamire, hogy "Jah, ez túl nehéz!" és máris választani a könnyebb utat.

Rendben, hogy az Enterball-ban "gyári" lehetőségként jelent meg az örökélet lehetősége, de lásd, a tesztelést és magát a játékot enélkül próbáltam, gyakoroltam, mert csak úgy alakulhat ki véleményem róla és csak így jöhet elő hiba is. Kár, hogy anno kevesen éltek a játékok adta eredeti beállításokkal, de talán ma érdemes lenne néha küzdeni vele.

Pgyuri

Offline Lacika

  • EP addict
  • *
  • Posts: 3189
  • Country: hu
    • http://www.ep128.hu
Re: Enterball
« Reply #122 on: 2012.December.13. 13:04:47 »
Szerintem az örökéletre vonatkozó kérdés praktikus, több okból is:
- mivel az EP-n általában (gyakorlatilag mindíg) már a betöltő program is gépi kódú, nehéz bevinni örökéletet a programba.
- a választás lehetősége valóban ott van, én pl. sohasem örökélettel játszok / tesztelek. A "kihívás csökkentő hatás" amúgy is kevés az emulátoros időben, hisz ott a snapshot mentés lehetősége.
- ha valaki tényleg csak meg akarja nézni a programot, "mit tud", még mindig "okosabb" lesz ha örökélettel "végignyomja", mintha megnézne egy youtube-os videót.
- És persze tény, hogy az "akkori" játékok sokkal szivatósabbak voltak, mint manapság. Elég, ha abba belegondolunk, hogy egy mai FPS-ben már medikit sincs, gyakorlatilag örökélettel játszunk...

Attól egyébként régen én is falra másztam, amikor a Defender of the Crown-ba az áríró alapból betette (választási lehetőség nélkül) a havi 255 arany bevételt. Ez tényleg megöli a játékot.
« Last Edit: 2012.December.13. 13:08:43 by Lacika »

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Enterball
« Reply #123 on: 2012.December.13. 13:13:37 »
Quote from: Pgyuri
Ez régen C64-en volt divat
Nálunk is nagyon sok játékban benne volt. Ha nem, akkor meg nekiálltunk keresni, mert hiába láttuk az SpV-ban irigykedve a sok poke-t, azzal mi nem mentünk sokra...

Az utóbbi években készült átiratoknál az lett a szokás, hogy elmenti a High Score-t, de csak akkor ha csalás nélküli módban játszottunk.


Quote
Rendben, hogy az Enterball-ban "gyári" lehetőségként jelent meg az örökélet lehetősége, de lásd, a tesztelést és magát a játékot enélkül próbáltam
Nagyon úgy tűnik, hogy az A Studióban is csak örökélettel teszteltek :-)

Offline Pgyuri

  • EP fan
  • *
  • Posts: 156
Re: Enterball
« Reply #124 on: 2012.December.13. 13:15:50 »
Tisztelt Bíróság!

Kérem korábbi hozzászólásom figyelmen kívül hagyását, hirtelen felindulásból történt :)


Komolyra fordítva a szót, valóban siralmas a mai játékok szintje, nehézsége, erről Szenttornyai Lászlóval is beszélgettem pár szót előadás szünetben. Azonban pont ezért nem szeretem az örökélet bevitel könnyű választását, mert nagyon hamar átteszi az embert arra az oldalra, hogy ne kínlódjon valamivel 5 percnél tovább.

Sajnos magam ellen is tudok érvelni pro/kontra :)

Az említett Jet Set Willy játékban tárgyakat kell felszedegetni, számszerint 83-at, amiből programhiba miatt 79 lehetséges. Gyermekként elképzelhetetlennek tűnt, hogy teljesíthető lenne a feladat a kiindulási 8 élettel, bár tény, hogy hónapokon át próbálkoztunk folyamatosan, de a távoli képernyőkre eljutni is nehéz volt, nem még ott gyűjtögetni is. Az örökélet - és a hibajavító POKE-ok - segítettek abban, hogy átélhettem a végigjátszás örömét, láthattam a végét, de az is tény, hogy ez még így is nagy kihívás volt, mert könnyen lehetett örökhalál állapotába kerülni, tehát ügyeskedni kellett.
Felnőttként a myspeccy versengés során éreztem kihívásnak a játékot és mivel ott nem lehetett POKE-olni, így meg kellett tanulnom játszani vele és bebizonyította a programozó számomra, hogy bizony végigjátszható játékot tervezett, csak hamar feladtam anno. Az újabb majdnem végigjátszás (mivel hibajavító POKE nélkül nem lehet) ismét nagy örömet adott.

Ez legyen az örökélet melletti és egyből az elleni érv is :)

Az Enterball nem tartozik az örökélet nélkül teljesíthető játék kategóriájába, mivel túl sok a véletlen benne. Ha a program készítői csak 3 napig tesztelték volna játékukat, akkor nem csak a Zozo által felderített hibákat javították volna, hanem a játékot is átkalibrálták volna élvezhetőbbé. De hát sajnos nem ez volt a céljuk. Kár.

Pgyuri

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Enterball
« Reply #125 on: 2012.December.13. 13:27:48 »
Quote from: Pgyuri
 hanem a játékot is átkalibrálták volna élvezhetőbbé.
Erről az jut eszembe, hogy amikor először töltöttem be EP64-en az Eggs of Death-ot, és jött az élmény, hogy jééé ezzel még játszani is lehet??? Tuti, hogy 64-es gépen írták, és a végén nem akartak, vagy a kiadási határidő miatt nem jutott idő foglalkozni a 128-ason gyorsabb program futással.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Enterball
« Reply #126 on: 2013.January.01. 18:37:21 »
ENTERPRESS Programozási fogások és melléfogások rovatának 2013-as különkiadása következik :-)

Hogyan sorsolja a pályákat a játék? Az 1. és az 50. pálya fix, a közte lévő 48-at sorsolja úgy, hogy egy játék alatt mindegyik csak egyszer kerüljön sorra.
Ehhez létrehoz egy táblázatot:
Code: [Select]
>6008  00 01 02 03 04 05 06 07  :........
>6010  08 09 0A 0B 0C 0D 0E 0F  :........
>6018  10 11 12 13 14 15 16 17  :........
>6020  18 19 1A 1B 1C 1D 1E 1F  :........
>6028  20 21 22 23 24 25 26 27  : !"#$%&'
>6030  28 29 2A 2B 2C 2D 2E 2F  :()*+,-./
>6038  30 31 FF 00 00 04 01 05  :01......

6008h címen egy változó, amit minden megszakításban változtat.
6009h hanyadik LEVEL-en tart a játékos
600A-6039h 48 pályasorszám, bit 7 1-esbe állításával jelzi, hogy az adott pálya már volt.
603Ah listát lezáró FFh

Véletlenszám generálása a megszakítási rutinban:
Code: ZiLOG Z80 Assembler
  1.   A6BE  3A 08 60     LD    A, (6008)
  2.   A6C1  3C           INC   A
  3.   A6C2  FE 31        CP    31
  4.   A6C4  20 01        JR    NZ, A6C7
  5.   A6C6  AF           XOR   A
  6.   A6C7  32 08 60     LD    (6008), A
Növeli a változó értékét, és ha elérte a 49-t, akkor újrakezdi nulláról.

Itt a sorsoló programrész:
Code: ZiLOG Z80 Assembler
  1.   9D9D  3A 09 60     LD    A, (6009)
  2.   9DA0  FE 32        CP    32
  3.   9DA2  20 04        JR    NZ, 9DA8
  4.   9DA4  32 06 79     LD    (7906), A
  5.   9DA7  C9           RET  
  6.   9DA8  21 0A 60     LD    HL, 600A
  7.   9DAB  3A 08 60     LD    A, (6008)
  8.   9DAE  5F           LD    E, A
  9.   9DAF  16 00        LD    D, 00
  10.   9DB1  19           ADD   HL, DE
  11.   9DB2  CB 7E        BIT   7, (HL)
  12.   9DB4  20 07        JR    NZ, 9DBD
  13.   9DB6  7E           LD    A, (HL)
  14.   9DB7  CB FE        SET   7, (HL)
  15.   9DB9  32 06 79     LD    (7906), A
  16.   9DBC  C9           RET
  17.   9DBD  23           INC   HL
  18.   9DBE  7E           LD    A, (HL)
  19.   9DBF  FE FF        CP    FF
  20.   9DC1  20 03        JR    NZ, 9DC6
  21.   9DC3  21 0A 60     LD    HL, 600A
  22.   9DC6  CB 7E        BIT   7, (HL)
  23.   9DC8  20 F3        JR    NZ, 9DBD
  24.   9DCA  7E           LD    A, (HL)
  25.   9DCB  CB FE        SET   7, (HL)
  26.   9DCD  32 06 79     LD    (7906), A
  27.   9DD0  C9           RET
  28.  
7906h a használandó pálya sorszáma.
Elsőként leellenőrzi, hogy az 50. LEVEL következik? Ha igen, akkor vissza is tér az 50. pálya kiválasztásával.
Ha nem, akkor jön a sorsolás:
A véletlenszám változót hozzáadja a táblázat címéhez, majd megnézi, hogy az így kiválasztott pálya volt-e már használva, ha még nem, akkor azzal visszatér.
Ha igen, akkor veszi a táblázat következő elemét, és leellenőrzi nem-e a táblázat vége, ha igen, akkor ugrik a táblázat elejére.
Az így kiválasztott pályát megnézi, volt-e használva, ha nem, akkor visszatér, ha igen, akkor folytatódik a keresés. Biztosan talál elöbb-utóbb, amikor már nincs szabad pálya (50. LEVEL), már nem lép be a sorsoló rutinba.

Hol a hiba? A véletlenszám generálásban! 48 pályából kell sorsolni, és a legnagyobb szám 48 lehet. Ez miért hiba? Azért mert a táblázat elemeit 0 eltolással kezdve címzi, azaz 0-47 az értelmes eltolási érték, míg a véletlenszám 0-48 érték lehet (összesen 49 érték)!
Ha a véletlenszám pont 48 (30h), akkor az ellenőrizendő érték a lezáró FFh lesz. Mivel ez felhasznált elemnek tünik (bit 7 = 1) ugrik a következőre. Itt már hiába ellenőrzi, hogy ez-e a táblázat vége... az itt található 00h elfogadható értéknek tűnik majd, ezzel kiválasztja a 0. valójában a 256. pályát, ami mivel csak 50 pálya van, valami véletlenszerű memóriaszemét lesz!

Javítás: a véletlenszám generálásban CP 31h helyett CP 30h kell.

Az rejtély, hogy ennyi éven át nem tűnt fel, gyakorlatilag minden új pályára lépés 1:49-es arányú orosz rulett volt...
(Bár nekem rémlik, hogy láttam ilyen sérült pályát, még az Enterball kazetta új korában, de újra betöltve nem jött elő, azt gondoltam, biztos hibás betöltés volt.)

Offline Lacika

  • EP addict
  • *
  • Posts: 3189
  • Country: hu
    • http://www.ep128.hu
Re: Enterball
« Reply #127 on: 2013.January.01. 18:45:43 »
Emiatt van kriszály nélküli pálya?

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Enterball
« Reply #128 on: 2013.January.01. 19:17:06 »
Quote from: Lacika
Emiatt van kriszály nélküli pálya?
Igen, vagy olyat is láttam, hogy a pályán kívül volt, az ENTERBALL feliratban :-)

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9888
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Enterball
« Reply #129 on: 2013.January.01. 20:08:57 »
Nagyon halványan rémlik valami régebbről. Ilyenkor azt hittem, fagyás van, és reseteltem. Arra gondoltam, túl sok játék után "beparázik" a gép, vagy ilyesmi. A Grid Trouble-lal volt hasonló, sok játék után lefagyott, azt hittem talán, az Enterball-nál is ilyesmi van.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Enterball
« Reply #130 on: 2013.January.01. 21:15:38 »
Plusz érdekesség: a TV BALL-ban a jó érték van!

Offline Lacika

  • EP addict
  • *
  • Posts: 3189
  • Country: hu
    • http://www.ep128.hu
Re: Enterball
« Reply #131 on: 2013.January.01. 21:18:50 »
Quote from: Zozosoft
Plusz érdekesség: a TV BALL-ban a jó érték van!
Gondolom az készült később. Átírásnál észrevették a hibát, de addigra egy csomó kazetta le volt gyártva. Akkor még nem volt automatikus frissítés...:ds_icon_cheesygrin:

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Enterball
« Reply #132 on: 2013.January.01. 21:30:30 »
Quote from: Lacika
Gondolom az készült később. Átírásnál észrevették a hibát, de addigra egy csomó kazetta le volt gyártva. Akkor még nem volt automatikus frissítés...:ds_icon_cheesygrin:
Én is erre tippelek! :-)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Enterball
« Reply #133 on: 2013.January.02. 11:47:01 »
Javított verzió (a bal felső sarokban beleír a képbe hiba is javítva). Remélhetőleg több gyári hibát már nem rejtettek el :oops:

Offline Lacika

  • EP addict
  • *
  • Posts: 3189
  • Country: hu
    • http://www.ep128.hu
Re: Enterball
« Reply #134 on: 2013.January.02. 12:56:10 »
Akkor hamarosan várható a Specball final is?;-)