Welcome, Guest. Please login or register.


Author Topic: Escape (TVC) (Read 6384 times)

Offline Ferro73

  • EP addict
  • *
  • Posts: 1016
  • Country: hu
Re:Escape (TVC)
« Reply #15 on: 2021.January.15. 18:19:52 »
Javaslat:
Code: [Select]
5440 DEF PALGAME !LET C0=0:LET C1=10:LET C2=91:LET C3=41
 5450   RESTORE 5500
 5460   FOR I=3 TO 24
 5470     READ J0,J1,J3
 5480     SET #I:PALETTE J0,J1,C2,J3
 5490   NEXT I
 5500   DATA 0,130,121
 5510   DATA 64,130,233
 5520   DATA 8,130,105
 5530   DATA 72,18,41
 5540   DATA 8,18,97
 5550   DATA 64,18,41
 5560   DATA 0,146,105
 5570   DATA 32,146,233
 5580   DATA 96,146,121
 5590   DATA 40,146,233
 5600   DATA 104,146,105
 5610   DATA 40,210,41
 5620   DATA 96,210,97
 5630   DATA 32,210,41
 5640   DATA 0,210,105
 5650   DATA 64,154,233
 5660   DATA 8,154,121
 5670   DATA 72,154,233
 5680   DATA 8,154,105
 5690   DATA 64,218,41
 5700   DATA 0,218,97
 5710   DATA 32,218,33
 5720 END DEF
helyette:
Code: [Select]
5440 DEF PALGAME !LET C0=0:LET C1=10:LET C2=91:LET C3=41
 5450   RESTORE 5500
 5460   FOR I=3 TO 24
 5470     READ J0,J1,J3
 5480     SET #I:PALETTE J0,J1,C2,J3
 5490   NEXT I
 5495 END DEF
 5500 DATA 0,130,121
 5510 DATA 64,130,233
 5520 DATA 8,130,105
 5530 DATA 72,18,41
 5540 DATA 8,18,97
 5550 DATA 64,18,41
 5560 DATA 0,146,105
 5570 DATA 32,146,233
 5580 DATA 96,146,121
 5590 DATA 40,146,233
 5600 DATA 104,146,105
 5610 DATA 40,210,41
 5620 DATA 96,210,97
 5630 DATA 32,210,41
 5640 DATA 0,210,105
 5650 DATA 64,154,233
 5660 DATA 8,154,121
 5670 DATA 72,154,233
 5680 DATA 8,154,105
 5690 DATA 64,218,41
 5700 DATA 0,218,97
 5710 DATA 32,218,33
 5720 REM
Rengeteg felesleges memóriát használ fel és felesleges idő pocsékolás.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 10095
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Escape (TVC)
« Reply #16 on: 2021.January.15. 20:35:07 »
Javaslat:
Ennek tényleg lehet jelentősége, hogy a DATA sorok a DEF-en belül vannak-e vagy nem? Tudom, hogy külön a program végére illene tenni az összes DATA sort. Csak azért teszem oda, ahol a READ is van hozzá, mert úgy át tudom látni, mihez mi tartozik.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Tomato77

  • EP user
  • *
  • Posts: 398
  • Country: hu
    • Támogató Támogató
Re:Escape (TVC)
« Reply #17 on: 2021.January.15. 20:53:05 »
Ennek tényleg lehet jelentősége, hogy a DATA sorok a DEF-en belül vannak-e vagy nem?
Mivel a Basic egy interpreter, időbe telik, amíg a DATA sorokat végigcsámcsogja a szubrutin végén és nem csinál velük semmit. Le lehetne tesztelni, mennyivel fut gyorsabban, ha nem a rutinon belül vannak. Zzzipnél lehet, hogy mindegy.
Kotasoft

Offline Ferro73

  • EP addict
  • *
  • Posts: 1016
  • Country: hu
Re:Escape (TVC)
« Reply #18 on: 2021.January.15. 22:07:14 »
Mivel a Basic egy interpreter, időbe telik, amíg a DATA sorokat végigcsámcsogja a szubrutin végén és nem csinál velük semmit. Le lehetne tesztelni, mennyivel fut gyorsabban, ha nem a rutinon belül vannak. Zzzipnél lehet, hogy mindegy.

Leteszteltem BASIC-ban gyorsabb.
Nem kell 2x átrágnia a DATA sorokat

Ennek tényleg lehet jelentősége, hogy a DATA sorok a DEF-en belül vannak-e vagy nem? Tudom, hogy külön a program végére illene tenni az összes DATA sort. Csak azért teszem oda, ahol a READ is van hozzá, mert úgy át tudom látni, mihez mi tartozik.
Az nem gond ha belül van. Az már igen ha 2x is betöltöd.
Először a RESTORE  beállítja a READ  DATA-it ez ok.
Majd megint a DATA sor előre beolvassa a memóriába  amit később kiolvashatsz READ-al. Mind addig amig nem jön egy RESTORE mer akkor törli ami a memóriában van.
Új variáció, Így szintén jó.
Code: [Select]
xxx1 RESTORE
xxx2 DATA 1,2,3,4
xxx3 READ A,B,C,D


Javaslat:
A
Code: [Select]
3880     GOSUB 4840
Mivel ez az egyetelen hivatkozás ezért a
Code: [Select]
4840 FOR K=1 TO 10
 4850   IF (K BAND 1)=0 THEN
 4860     SET #EX:INK 3
 4870   ELSE
 4880     SET #EX:INK 2
 4890   END IF
 4900   PRINT #EX,AT 1,EY:DEAD$;
 4910   SOUND PITCH K+32,DURATION 1,LEFT 96,RIGHT 96
 4920   SOUND SOURCE 1,STYLE 48,DURATION 3,INTERRUPT,PITCH 42+K*3,RIGHT 8*EY-1,LEFT 255-(8*EY-2)
 4930   FOR PPP=1 TO 120
 4940   NEXT PPP
 4950 NEXT K
 4960 SET #EX:INK 0:PRINT #EX,AT 1,EY:CHR$(159);:SET #EX:INK 2
 4970 FOR PPP=1 TO 600
 4980 NEXT PPP
15 sort 3871-3889 közé bezsufolhatod.
« Last Edit: 2021.January.15. 22:13:32 by Ferro73 »

Offline Tomato77

  • EP user
  • *
  • Posts: 398
  • Country: hu
    • Támogató Támogató
Re:Escape (TVC)
« Reply #19 on: 2021.January.16. 00:09:49 »
Az nem gond ha belül van. Az már igen ha 2x is betöltöd.
Szerintem az is lassít, ha csak ott vannak a DATA sorok és nem olvassa be kétszer. REM sorok is lassítanák, amíg elérne az END DEF-ig. Egy compiler fordításkor észrevenné, de az interpreter futási időben foglalkozik ezekkel a sorokkal.
Kotasoft

Offline Ferro73

  • EP addict
  • *
  • Posts: 1016
  • Country: hu
Re:Escape (TVC)
« Reply #20 on: 2021.January.16. 20:54:02 »
Szerintem az is lassít, ha csak ott vannak a DATA sorok és nem olvassa be kétszer.
Lepróbáltam ha csak 1x fút a DATA sor(ok) akkor nincs jelentősége, hogy kint vagy bent.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 10095
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Escape (TVC)
« Reply #21 on: 2021.February.27. 16:42:52 »
A TVC-ról átírt Escape játékban javítottam pár dolgot. A szörnyek szemének villogásakor egy pixellel lejjebb volt a piros szem, mint kellett volna. A teleportáláskor a hang nem annyira volt jó. Volt egy felesleges értékadó ciklus a program elején, amiről azt hittem, kell, de nem kell, azt töröltem. A szörnyek mozgásakor és a bonus elszámolásakor az egyre magasabb hangok elméletileg előbb-utóbb hibát okoznak a sokadik szinten, mert túl nagy lesz az érték, ezt is javítottam (ehhez kellett volna a MIN függvény, de a Zzzip nem csípte). A kijelző második sorának színét is elméletileg megváltoztattam, de már nem tudom, milyen volt az előző.
[ Guests cannot view attachments ]
Majd csinálok egy végtelen lőszeres verziót, azzal lehet tesztelni, hogy viszi a sokadik szinteket.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 10095
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Escape (TVC)
« Reply #22 on: 2021.February.27. 21:32:56 »
Az előző nem volt még tökéletes, ez már remélhetőleg az. A pálya elején nem váltott kékre a keret arra az időre, amíg még nem léphettünk, most már átvált. Talán még valami apróságokat is ügyködtem rajta, de már nem tudom, mit. :D
Végtelen lőszerrel a 40. szinten is ment, de már negatív lett a pontszám, mert túllépte a Zzzip által megengedett értéket. De csalás nélkül a 30. szintre is csoda, ha eljut az ember. Ha 10 lőszerünk van és 10000 nagyságrendű a pontszám, akkor a score felirat S betűjét felülírja a lőszer száma. De ez csak elméleti probléma, ha el is ér valaki ekkora eredményt, biztos nem lesz már 10 lőszer csalás nélkül.
Végtelen lőszeres verziót nem teszek fel, könnyen előállíthatja, aki akarja. :D
Nagyon fontos mellékes kiegészítés, hogy minden gomb megnyomására (az irányítógombok kivételével) más hangot ad a játék, shift-tel együtt nyomva még érdekesebb. A funkcióbillentyűk hatása is fenomenális. Így szintetizátorként is használható, ha a játék esetleg unalmassá válna. (Még jó, hogy a SOUND PITCH ORD(A$) is működik, amikor A$=INKEY$.)
Az ESC-vel vissza lehet lépni a menübe.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos