21. září bude sraz! Od 18.00 v restauraci Tradice v Praze u Anděla
Autor Zpráva
Anonymní
Profil *
Chtěl bych udělat textovku v HTML. Jaké funkce mám využít pro zapamatování sebraných předmětů? Tato funkce je např. při online nakupování - prohlížeč si pamatuje co mám v košíku, ale jak na to?

Lze udělat, aby soubory měli jinou koncovku než html, nebo byly bez koncovky? Jedná se mi o to, aby byl spustitelný pouze 1 soubor (měl by koncovku html), aby se čtenáři neochudili o zážitek ze hry spouštěním jiných souborů a pročítáním děje v konečných fázích hry...
Argos
Profil *
Pri on-line nakupování se používá php nebo neco podobnýho, ale to bych na textovku asi nepouzival - by pak fungovalo jen na serveru a nebo kdyz by mel nekdo nainstalovanej server doma (ale to ma dost malo lidi) ja bych to asi udelal pres formulare a na to pamatovani dat <input type="hidden" name="kladivo" value="1"><input type="hidden" name="pila" value="0" atd. pak by to snad nak slo osetrit javascriptem.... (nevim javascript neumim a nebavi me)
Toť muj nazor....
Argos
Hugo
Profil
Ja si myslim, ze bez serveroveho skriptovani se u textovky neobejdes. Pomoci JS by to slo, ale to bude velmi zavisle na nastaveni klienta.
Honza Hučín
Profil
To, že si aplikace pamatuje obsah košíku, zajišťují takzvané sessions. Je to výborná vychytávka serverového skriptování (v PHP od verze 4), která u každého uživatele ukládá aktuální stav procesu (tj. které stránky prošel, co si dal do košíku, případně jeho heslo apod.) na server.

Pracovat se sessions vyžaduje umět serverové skriptování (např. PHP) na vyšší než začátečnické úrovni.

Stav procesu se dá předávat i ve skrytých položkách adresáře nebo v cookies, ale první z toho je šíleně složité při rozsáhlejší aplikaci, druhé zase méně spolehlivé. A i tak je potřeba na obojí umět serverové skriptování.
Wan-To
Profil *
On-line nebo off-line textovku? Pro off-line HTML stačí, ale nepůjde to ukládat... To už je lepší napsat v C nebo v Javě. Pro on-line buď PHP, pokud by se jednalo o nějakou strategii, nebo něco podobného. Jinak pokud myslíš MUD, tak na to je nejlepší C++, Java nebo Delphi Pascal + používat nějakého dobrého klienta, jako např. zMud 5.5.
Anonymní
Profil *
Chci to udělat off-line, takže PHP bohužel nevyužiju :( Nevim co to je MUD. Chci udelat textovk se sbiranim a pouzivanim predmetu bez nutnosti zadavani prikazu... Mrknu se na ten JavaScript, proto C jde uplne mimo me :(
Anonymní
Profil *
Existuje nejaka str. podobna jakpsatweb.cz uvozujici do jazyka C ?
Anonymní
Profil *
Vytvoření textového souboru řeší VBscript, jenže funguje pouze na Explorerech a vyskakuje nepříjemná hláška o nebezpečných objektech a hlavně textovka se ukládá na klientském PC. Pokud by stačilo zapamatovat si proměnné (obsahy košíku) jen při nakupování je možné použít rámy. Ve spodním rámu by se zboží vybíralo a jako proměnná (řetězec) předávalo proměnné do rámu vrchního. Podmínkou je, alby uživatel nestiskl F5, pak jsou proměnné fuč.

Procedura pro vytvoření texťáku:


<script> Sub CreateAfile

Dim fso, MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile("c:\testfile.txt", True)
MyFile.WriteLine("This is a test.")
MyFile.Close
End Sub
</script>
Wan-To
Profil *
MUD znamená Multi used dungeon, byl populární v 80. letech (minulého století) a je to v podstatě on-line textovka. Jinak na off-line textovku doporučuji Javu, asi proto, že v ní sám programuji ;-))) Ale je rozhodně lepší než C - je jednoduší (sice pomalejší, ale to není u textovky důležité), má rozsáhlé API a programy v ní vytvořené jsou extrmémě malé (textovka tak do 200 kB).
Wan-To
Profil *
Kdybys potřeboval víc informací o Javě, tak mi napiš na wanto@atlas.cz. Pokud se jedná o Javu, rád poradím.
thingwath
Profil
MUD v Javě? Za chvilku mi do Javy přepíšou i Angband a Adom (na tom už se snad mám pocit pracuje). Ach jo :-)
Wan-To
Profil *
Proč ne v Javě? Já vím, jsem s tou Javou strašně otravný, ale stejně si myslím že je lepší než Delphi a C++, ve kterých se MUDy taky dají dělat. Pokusím se vysvětlit, proč právě v Javě:
- Java je objektově orientovaná a přímo podporuje serializaci (zápis objektů do souborů)
- Java nemá žádné složité konstrukce jako C++
- Používá stejný sestém neblokujících socketů jako C++
- Má rozsáhlé API - nejmíň polovina funkcí potřebných pro MUD je už někde napsaná a zoptimalizovaná, v C++ bys je musel programovat a různě urychlovat
- S HotSpot Server VM je program skoro stejně rychlý, jako kdyby byl ve strojovém kódu

Už chápeš, proč v Javě??? ;-)))
thingwath
Profil
A no jo. Jenže, takový Angband nebo dokonce Nethack či nedejbože přímo Rogue (nebo Moria a spousta dalších), to jsou klasické unixové věci, napsané v C a tak by to přece mělo být. Jsou takové odjakživa. Tyhle věci patří k Unixu a jazykem Unixu je C, proč to cpát přes další vrstvu?

Java je na dost věcí lepší, na dost ne. Angband bych v Javě nechtěl.
Wan-To
Profil *
Myslím, že kdyby byl Angband v Javě, tak bys to při hraní ani nepoznal. A v Javě bys ho měl napsaný dvakrát rychleji než v C. Nechci, ani nemůžu, ti brát tvé názory ale podle mě je Java na jednoduché hry, jako jsou textovky prostě lepší.
thingwath
Profil
Textovky podle mě nejsou vhodné pole působnosti pro Javu, ale budiž. Nejde o rychlost vykonání programu, ale textovka neptřebuje všechny ty možnosti Javy, to je zbytečné. Na to se dají použít jednodušší prostředky.

A takový Nethack, kdyby byl v Javě. myslíš, že bych ho našel ve dvousetmegové základní instalaci systému?
Wan-To
Profil *
Nethack neznám, ale programy v Javě mají jednu zvláštnost: knihovny API se nevkládají do programu jako v C++, ale vytvoří se na ně "odkaz". Jednoduše řečeno, knihovny musí být na každém počítači, kde má fungovat Java. Takže programy v Javě jsou extrémě malé, pouze v řádech kilobajtů nebo vyjímečně megabajtů.
thingwath
Profil
O dynamickém linkování si ještě neslyšel? Můžu napsat program v C a knihovny pouze zalinkovat, takže nejsou součastí programu, je to naprosto běžná praxe :-) Ano, v té základní instalaci systému by musela být Java a to prostě nebude.
Wan-To
Profil *
Já nevím, jestli má cenu dohadovat se o tom, jestli psát textovky v Javě nebo v C... Já bych je psal v Javě, protože Javu umím a vyhovuje mi víc než nějaké C. Své "hádání se" s tebou končím, protože to nemá smysl ;-))) Jen bych chtěl ještě vědět, co jsi myslel větou myslíš, že bych ho našel ve dvousetmegové základní instalaci systému? Programy v Javě jsou přece o mnoho menší než v C, to jsi nevěděl?
thingwath
Profil
Ta dvousetmegová instalace obsahuje systém, základní nástroje a právě ty hry, kolik má JDK? Programy v javě jsou možná o něco menší než v C. Ale pokud k tomu připočteš tu Javu, tak nemají šanci. Navíc hovořím o instalaci systému, pro který Java oficiálně vůbec dostupná není a musí se tam rozcházet buď přes Linuxovou emulaci nebo jiné berličky. Nemluvě o tom, že to ani zdaleka nepokrývá všechny platformy na nichž ten systém běží. Jde o NetBSD.

Nechci se hádat, nicméně jsou věci, na které Javu nepoužiju. Základní součásti systému jsou jedna z nich, to dá rozum.
Wan-To
Profil *
J2RE 1.4.2 má asi 10 MB, SDK asi 15 MB. Jsem rád, že jsi mi vysvětlil, všechno, co jsem chtěl vědět. Teď už se ti nedivím, proč bys to v Javě nechtěl. Stejně si ale myslím, že by instalace měla pod 200 MB ;)))
thingwath
Profil

UNCOMPRESSED PACKAGE SIZE: 133460 K

Tohle mi tvrdí balíčkovací systém (sdk 1.5), nijak důsledněji jsem to neprověřoval, ale ta hodnota se od té tvojí docela liší ;-) Compressed to dělá asi 60 MB.
Wan-To
Profil *
Není to v kilobitech? Nebo s nějakým IDE, třeba NetBeans?
thingwath
Profil
Ne, jsou to poctivé kilobajty. Být to s IDE, tak je to ještě horší (mám NetBeans (+80M) a jBuilder (+660M)) :-)

Každopádně údaj 15 MB je absolutně nerealistický, když instalačka od Sunu má 40 MB.

Trochu jsem to každopádně probral. Binárky nástrojů z jdk mají 3 M, dema 14 M, knihovny 8.5 M, obsažené manuálové stránky 1 M, JRE má 96 M, z toho 1.5 M spustittelné binárky a zbytek knihovny. I když se dost z toho dá ořezat, 15 M z toho stejně nikdo nevykouzlí.
Wan-To
Profil *
Tak nevím, s čím jsem si to spletl. Doteď jsem si myslel, že to má 15 MB ;)) No, těch 15 bude mít možná J2RE.
kkkk
Profil *
hele jak mam udelat textovku?dik
peta
Profil *
kkkk
Nejlepsi je javascript, ale tam davas k dispozici i seznam slov, coz hrac pokrocilejsi si dokaze zobrazit zdrojovy kod.

Pak lze pouzit PHP.

Jak si predstavujes, ze ma textovka fungovat?
www.volny.cz/peter.mlich/hry/hry.htm
Treba jako 3D maze bludiste?
Kdyztak napis mail... mracek@xko.cz
peta
Profil *
Hugo Toz, kdyby to na tom zaviselo, lze pouzit jednoduche sifrovani textu.
treba tady mam takovou primitivni konverzi, ale musis znat delku...
// transform hex to bin / bin to hex
function codeTo16(binstring)
{
var a,b,x,i,j,hxstring;hxstring='';
b=binstring.length;
a=b>>3;
if ((a<<3)!=b) {a+=1;binstring+='00000000'}
if(a>0) for(i=0;i<a;i++)
{
b=i<<3;
x=binstring.substring(b,b+8);
x=parseInt(x,2);
x=x.toString(16);
if (x.length<2) x='0'+x;
hxstring+=x;
}
return hxstring;
}

function codeTo2(hxstring)
{
var a,b,x,i,j,binstring;binstring='';
a=(hxstring.length)>>1
if(a>0) for(i=0;i<a;i++)
{
b=i<<1;
x=hxstring.substring(b,b+2);
x=parseInt(x,16);
x=x.toString(2);
b=x.length;
if (b<8) for(j=0;j<(8-b);j++) x='0'+x;
binstring+=x;
}
return binstring;
}

Konkretne pro text lze pouzit
n = (n) XOR (n-1)
zpetne
n = (n) XOR (n-1)
znak po znaku, prvni nesifrujes.

Nebo jednoduche sifrovani...
x = "abcde"
y = "ckrfgd"
Toto téma je uzamčeno. Odpověď nelze zaslat.

0