vsJTile engine

Status
Niet open voor verdere reacties.

That Guy

Meubilair
Lid geworden
28 nov 2006
Berichten
5.010
Beste allemaal,

Hierbij presenteer ik de vsJTile engine (:p). Het is een Tile engine gemaakt in javascript. Ik zou graag van andere horen wat ze er van vinden (het spelletje dat op het moment draait is nogal klein, dat weet ik) en of het in hun browser werkt.


de link: www.vegras-studios.com/X/tile/
req's: een browser met javascript, xhtml 1.0 strict en css-ondersteuning
besturing: pijltjestoetsen

Als je tegen iets aanloopt (object bijvoorbeeld) krijg je eventueel text te zien. Er is dus geen knop voor 'a' of iets dergelijks (zoals schijnbaar wordt gedacht als men pokemon-graphics ziet :p) Overgens is de 'game' niet een echte 'game' sinds er geen doelen in zitten, het zijn 3 maps, maar het gaat even om het principe.



:thumb:


Bugs:
- IE6 heeft extreem lange laadtijden en begint met lege maps (wit)
- IE6 Speler plaatje moet alle 4 de kanten op laden (wit)
- Opera (9.x) pijltjes ingedrukt houden lukt niet
- Niet-Windows OS heeft probleem met pijltjes ingedrukt houden.
 
Laatst bewerkt:
getest in: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092510 Ubuntu/8.04 (hardy) Firefox/3.0.3

de debug-textarea is te smal, zo gaat de 'mooie' layout van je ASCIIart-kader in de wind :p

de afbeeldingen van je speler worden ergens niet goed gepreload, de eerste maal dat je in een bepaalde richting beweegt is er een korte witte flash.. (dit gebeurt trouwens opnieuw na elke mapchange, mss kan je de speler ergens cachen?)

toets ingedrukt houden zorgt niet voor herhaling, hoewel ik dit eigenlijk wel verwacht had

spijtig dat je klok steeds dezelfde tijd aangeeft.


Dat waren zowat mijn korte opmerkingen. Ik moet zeggen dat ik zeer zwaar onder de indruk ben met wat je hier bereikt hebt.
Echt proficiat, ik kijk al uit naar verdere updates! :thumb:

ps: je had tijd teveel zeker om dit te maken :p
 
de debug-textarea is te smal, zo gaat de 'mooie' layout van je ASCIIart-kader in de wind :p
dat had ik gedaan omdat het vervelend is als de browser-window mee gaat scrollen als er niet full-screen gespeeld wordt. Sinds de debug niet belangrijk is voor het spelen, heb k m wat verkleint :)

de afbeeldingen van je speler worden ergens niet goed gepreload, de eerste maal dat je in een bepaalde richting beweegt is er een korte witte flash.. (dit gebeurt trouwens opnieuw na elke mapchange, mss kan je de speler ergens cachen?)
Sterker nog, het wordt helemaal niet gepreload. Verklaart ook waarom na elke mapchange het niet werkt, omdat de achtergrond dan anders is. Er komt ooit nog wel eens een preloader voor alle plaatjes, maar sinds ze veelal dynamisch worden gemaakt (php) moet ik er nog wat op vinden.

toets ingedrukt houden zorgt niet voor herhaling, hoewel ik dit eigenlijk wel verwacht had
Op deze Xp pc wel, met alle browsers behalve opera. Bedankt voor het testen, ga er wat voor zoeken

spijtig dat je klok steeds dezelfde tijd aangeeft.
heh, wel een leuk idee om deze te updaten.

Dat waren zowat mijn korte opmerkingen. Ik moet zeggen dat ik zeer zwaar onder de indruk ben met wat je hier bereikt hebt.
Echt proficiat, ik kijk al uit naar verdere updates! :thumb:

ps: je had tijd teveel zeker om dit te maken :p
Niet echt... begon op de 21e oktober met een concept, en sinds eergister alles omgezet naar OOP. (mede dankzij Glest, anders had je nu van de klif af gelegen :p) Tsja, avonduurtjes :D


Bedankt! :thumb:
 
Laatst bewerkt:
Tja, in Opera wordt onkeydown één keer geroepen. Daar zou onkeypress werken. Maar in IE7 wordt onkeypress alleen geroepen voor toetsen die voor input zorgen (letters, leestekens etc). Je zou er nog omheen kunnen met een globale variable die onkeydown blokkeert indien onkeypress werkt. Dan werkt het waarschijnlijk hetzelfde in alle browsers.

kan iets als dit:
Code:
var stopKeyDown = 1; // 1 betekent, sla éérste keydown over. 2 betekent, nooit meer keydown verwerken.

function onkeydownHandler(ev)
{
  switch (stopKeyDown)
  {
  case 2:
    return;
  case 1:
    stopKeyDown = 0;
    return;
  }

  // verwerk event
}

function onkeypressHandler(ev)
{
  if (!ev) ev = window.event;
  var key = ((ev.which)||(ev.keyCode));
  if (key == 37 || key == 38 || key == 39 || key == 40)
  {
    stopKeyDown = 2;
  }
 
  // verwerk event
}
 
Laatst bewerkt:
Knap gemaakt :thumb:

In IE7 krijg ik wel het vervelende effect dat, als ik op pijltje naar beneden duw, niet alleen het mannetje een stap naar beneden gaat, maar ook de pagina een stukje naar boven scrolled, waardoor de bovenste helf van het speelveld buiten beeld valt...

Die korte witte flits waar Johantrax het over heeft, zie ik trouwens ook bij elke beweging!

Maar verder ben ik evenzeer onder de indruk hoor! Nogmaals: knap gemaakt:thumb:

[edit]In FF2 is die grote blauwe rechthoek (iframe ?) een heel stuk kleiner dan in IE7, en daardoor treedt dat vervelende scrollen ook niet op...[/edit]
 
Laatst bewerkt:
In FF2 is die grote blauwe rechthoek (iframe ?) een heel stuk kleiner dan in IE7, en daardoor treedt dat vervelende scrollen ook niet op..

Zover ik weet heb ik geen blauw vak ergens neergezet op de pagina (en al helemaal geen iframes).... ik ga even kijken wat het zou kunnen zijn.

:thumb:



edit:
Heb nergens een blauw iets kunnen vinden, wat bedoel je precies? heb je mischien een screenie? :)
 
Laatst bewerkt:
Hierbij de screenshot...
 

Bijlagen

  • screen1.jpg
    screen1.jpg
    66,4 KB · Weergaven: 26
De vorige was in IE7, deze is in FF2
 

Bijlagen

  • screen2.jpg
    screen2.jpg
    26,9 KB · Weergaven: 33
oooh, dat's een textbox (textarea).

Via css heb ik de hoogte en breedte versteld, zo:
PHP:
//css
textarea#debug		{
	height		:	300px;
	width		:	300px;
	position	:	absolute;
	top		:	20px;
	left		:	350px;
			}
ik denk dat je IE zijn cache nog voor deze verandering is (stond toen op 700px bij 500px). Als je je cache wist, en dan nog eens kijkt, zou het opgelost moeten zijn!

:thumb:
 
Klopt! Ik had gisteren ook al eens gekeken vanuit het javascript-forum;)
 
Dat dacht ik al :)

Op het moment heeft de index.php wat headers om te zorgen dat er niets gecached wordt, maar dit is pas sinds vandaag. Vandaar.

:thumb:
 
Supergaaf gemaakt!

In Opera werkt het niet als je eerst in het spelkader klikt, iets dat ik gewend ben te doen voor het activeren van Flash-dingen enzo. :P
 
In Opera werkt het niet als je eerst in het spelkader klikt
bedankt voor het melden! Ik denk dat het ook komt omdat opera's pijltjestoetsen anders werken.


neem aan dat je het niet allemaal zelf hebt liggen typen?
Yup, code is 100% zelfgemaakt/getyped. Die maps zijn gewoon copy-paste en dan veranderen, maar het is wel wat werk ja :p

Ben bezig met een tooltje om die maps makkelijker te maken, maar wil eerst fixen op de engine goed krijgen. :)


bedankt tot zover voor alle positiefe reacties! :thumb: :D
 
Laatst bewerkt:
De engine heeft nu een optie voor timelight en bewegende tiles!

-De lichthoeveelheid veranderen met het uur, dus 8 uur zal het donkerder zijn dan om bijvoorbeeld 6 uur.

-Bewegende zijn er ook (als test, de klok in de cabin en in de dirtfield-map). Ze pre-loaden nog slechter dan de normale tiles, maar dat's omdat het nog niet gecached (mag/moet) worden.
:thumb:
 
Laatst bewerkt:
Te gek gewoon :D:thumb:

IN IE7 'knipperen' de bewegende tiles wel, maar ik vermoed dat dat weer te maken heeft met caching...

In Opera is het al pikkedonker terwijl het in IE / FF en GC nog erg licht is :D

Dirtfield -> invisible blockage : geraak ik daar op 1 of andere manier al door?


[edit]
<!--[if lt IE 7]><link rel='stylesheet' href='css/ie6_sucks.css' type='text/css' /><![endif]-->
HAHAHA... grapjas :D:D:D
[/edit]
 
Laatst bewerkt:
Dirtfield -> invisible blockage : geraak ik daar op 1 of andere manier al door?
dat heb ik gedaan zodat je niet verder in de map kan lopen (bugs met bewegende tiles :p)

In Opera is het al pikkedonker terwijl het in IE / FF en GC nog erg licht is
welke versie van Opera is dat? bij mij is alles even donker/licht... mischien weer een cache-probleem? zou je m kunnen legen en nogmaals kijken? (ie, gc en ff legen dus :p)


:thumb:
 
Ik heb Opera 9.61 vanmorgen geïnstalleerd... dus deze keer zal het niet aan de cache liggen ;)

In bijlage een afbeelding met het verschil in licht...
 

Bijlagen

  • AnderLicht.jpg
    AnderLicht.jpg
    28,1 KB · Weergaven: 22
ah, dan ligt het aan de nieuwe opera :p
denk dat het de getHour() functie is, maar dat kan aan mij liggen.

Als het in de cabin niet zo donker is (cabin = startmap) dan ligt het wss aan de getHour() javascript functie :)

:thumb:




[edit]

Hm, het locht toch aan jou :p
screenshot opera 9.62, net geinstalt. Mischien is dat het?

X\helpmij\opvsJTile.PNG

[/edit]
 
Laatst bewerkt:
Ofwel gaat het om 9.61 <--> 9.62 ???

Ze hebben speciaal voor jou een nieuwe versie gemaakt :D:D:D
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan