blogy logo
login PRIHLÁS SA
BLOG deadawp
ČLÁNKY
DISKUSIE
2
SLEDOVAŤ BLOG
Programátor
deadawp



Webwars si hľadá nového majiteľa - updated Feb 2020
pridal deadawp 31.8. 2017 o 13:17 (naposledy upravené 28.6. 2021 o 21:35)



Ahojte, projekt Webwars som vyvíjal takmer pol roka so základnými skúsenosťami s jazykom PHP, no na hru už nemám čas, musím sa venovať dôležitejším veciam. Hľadám človeka, ktorý by bol ochotný hru dokončiť, či prerobiť do OOP. Prinášam vám teda stručný opis hry. 

Info o hre:

  • Webwars je zaujímavou internetovou - browser hrou. Jedná sa o hru založenú na technológii PHP s využitím procedurálneho kódu, spôsobom hry pripomína Travian, i keď nemá mnoho interaktívnych prvkov, bola tvorená pri rôznych pokusoch programovania...
  • Hra je kompletne preložená do: sk, cz, en, de, rus, ita
  • Hráč si vyberie jednu z frakcií za ktorú hrá: (USA, ZSSR, ENG, ITA, GER, SVK)
  • Každá frakcia má svoje operácie, ktoré sú reálne podložené udalosťami z vojny, napríklad konflikt, misia, významná udalosť
  • Každá frakcia má svoje vybavenie vrátane jednotiek, zbraní, mechanizmov, strojov
  • V hre sú 3 meny: zlato, jedno a diamanty *prémiová mena
  • Akcie v hre --> získavanie surovín a iné sú brzdené batériou, pre menší rozdiel medzi hráčmi
  • Splnením operácií hráč odomyká nové jednotky, ktoré môžu priniesť napr viac surovín, viac vyrobiť/vydolovať
  • Každá frakcia má svoju klikateľnú mapu podľa štátu za aký hraje, tiež preloženú do všetkých jazykov
  • Každá pešia jednotka je spájaná so svojou zbraňou/zbraňami, ktorými môže byť vybavená pre navýšenie útočnej/obrannej sily
  • XP systém, Quest systém, ktorý sa hierarchicky navyšuje, po určitých úlohách sa jedná o násobné plnenie tej istej úlohy, napríklad dvojnásobný počet tých a tých jednotiek
  • Tabuľka najlepších hráčov(majorov) s možnosťou zaútočenia na iného hráča
  • Možnosť vytvoriť odboj (klan)
  • PM správy a real-time chat, minihra pre stavenie surovín vrátane prémiových
  • Možnosť kontaktovať administrátora
  • Logy chatu, prihlásení, odhlásení, registrácii

Zistené chyby a bugy v hre:

  • Nefunkčnosť obchodovania medzi hráčmi,
  • Zamedzenie zaútočenia na Allied hráčov Allied frakciou a to isté pre Axis
  • Nie je vytvorená funkcia pre zmenu/zaslanie hesla
  • Artilériu a obranný kanón nezaráta do celkovej sily obrannej/útočnej

Features:

  • Ochrana proti spam registráciám zaslaním overovacieho e-mailu s kódom pre aktiváciu účtu
  • Základná ochrana pred SQL Injection a XSS
  • Real-time stav servera a beh služieb, test spojenia s db atď.

Obsah súborov v root priečinku:

  • index.php (login)
  • /blog (predpripravený priečinok na blog)
  • /contact/index.php (kontakt na vás, dobré zmeniť v mailto váš mail, prípadne dorobiť formulár)
  • /css - css súbory
  • /game - priečinok so samotnou hrou
  • /global - priečinok obsahuje dôležité súbory pre konektivitu k db a iné
  • functions.php - napojenie na db + definované salty
  • battery.php - prípočet batérie periodické cykly
  • safe.php - vytiahnutie údajov z db
  • update_stats.php - výpočet útočnej sily, atď, mal by korešpondovať s .XLS súborom
  • /images - zložka s obrázkami jazykov
  • /js - js súbory šablóny
  • /languages preklad hry v jednotlivých jazykoch
  • /register/index.php (registrácia) - vo funkcii mail v php zmeniť adresu na váš web pre aktiváciu účtov po registrácii
  • /status/index.php (status servera) - zmeniť v súbore premennú server na váš server.
  • /mydb.sql - sql súbor so štruktúrou dát
  • /activate.php - aktivácia účtu po registrácii, ochrana proti SPAM. Používateľ musí link z e-mailu (register.php súboru) vložiť do prehliadača, kde príklad activate.php?48496 - ?kód pre odblokovanie účtu a prepnutie v DB activated z 0 na 1.
  • /common.php - integruje preklady

Obsah súborov game priečinok (hra):

  • /barracks - obsaduje súbor kasárni pre jednotlivé frakcie, kde sa vyrábajú bojové jednotky (pešie) - seržant dáva 2x útok, avšak ak má niekto 2 seržantov, útok nie je dvojnásobný ale iba jednonásobný, možno treba fixnúť v update_stats.php, každá frakcia má svoje jednotky v db v svojom jazyku, možnosť prerobiť na univerzál.
  • /css - CSS súbory k hre
  • /images - súbory s obrázkami, ktoré boli v hre využité, snažil som sa nájsť všetky s neobmedzenými právami na používanie
  • /js - .js súbory na responzivitu stránky
  • /logs - logy jednotlivých akcií - prihlásenia, odhlásenia, registrácie, chatlog - kto čo napísal do chatu, komplet história.
  • /main - súbory jednotlivých frakcií ku questom.
  • /passive_weapons - nefunkčné, nutnosť upraviť form action + umiestniť to niekam na stránku. Pár z questov naväzuje na zvýšenie levela, či už artilérie, tak obrannej steny, dávajú pasívny obranný /útočný bonus, nakoľko nie sú momentálne funkčné, tak nie sú zarátané v update_stats.php na útočnú/obrannú silu. stačí jednoducho pripočítať k attackom napr: +$stats['cattack'], pri obrane k defense +$stats['wdefense'];
  • /qok - overuje či boli questy splnené v jednotlivých frakciách
  • /weapons - výpočet v factory.php Koľko zbraní si môže daný hráč dovoliť za svoje zlato.
  • /barracks.php - trénovanie/odtrénovanie jednotiek
  • /factory.php - tvorba/predaj zbraní (tankov), čísla v php a aj v HTML by mali sedieť s .XLS súborom, neviem naisto, môžete to vhodne doupraviť.
  • /chat.php - súbor chatu. integruje sa tu súbor refresh a j.php a js/j.js
  • /index.php - dobré by bolo nastaviť túto stránku ako error 404, hráč po prihlásení na úvodnej stránke má header na stránku v hre main.php a nejaký hráč môže skúšať zmazať časť linku.
  • /main.php - prehľad jednotiek, frakcií, preklik na inventár, v spodnej časti klikateľná mapa frakcie (pre všetky jazyky)
  • mayor.php - Údaje o majorovi (hráčovi) pozor: momentálne vypisuje aj suroviny hráča. QUERY príklad: mayor.php?1 (1=ID)
  • /mayors.php - Prehľad najlepších majorov na serveri, za progress získava hráč body. Tým sa umiestňuje v rebríčku, na stránke je v QUERY LIMIT 5. Teda sa vypíše iba 5 najlepších, ak sa zmaže limit, vypíše všetkých registrovaných.
  • /me.php - inventár. Za plnenie operations.php získava hráč odznaky, po druhej misii získava tankovú divíziu/pešiu divíziu v závislosti na frakcii Tieto bonusy dávajú bonusový útok v operations.php
  • /message.php - Kontakt na admina. Hráč napíše požiadavku, odošle a v db sa zobrazí v tabuľke message
  • /minigame.php - hráč môže staviť jedlo/zlato, alebo diamanty (premiovú menu) a staviť ich. Ak vyhrá, získa dvojnásobok, ak prehrá príde o vsadené suroviny.
  • /operations.php - Tu hráč plní operácie. Každý hráč má svoje, ktoré sú ako-tak chronologicky časovo usporiadané. Za splnenie získava bonus v podobe medaile.
  • /post.php - PM správy medzi 2 hráčmi, okrem toho cez tento systém sa aj pozýva do klanu.
  • /production.php - overuje stav questov, zadáva questy a tu za batériu pracujú baníci pre zlato/farmári pre jedlo.
  • /refresh.php - stará sa o chat
  • /j.php - stará sa o chat
  • /logout.php - odhlásenie na úvodnú stránku hru na ../index.php (LOGIN)
  • /resistance.php - založenie klanu/vstup do existujúceho klanu.
  • /resistances.php - prehľad klanov, na spôsob mayors.php
  • /shop.php - obchodovanie medzi hráčmi. To, čo hráč ponúka a čo chce sa do DB zapíše, avšak na stránke to nefunguje
  • Do hry bola kedysi integrovaná aj mapa sveta. Avšak kvôli prestavaní šablóna a iných vecí prestala fungovať, súbor však viem dodať. Hra by mala byť určená pre naučenie sa používať a ako vhodne riešiť niektoré časti browser hier. Vhodnou alternatívou do budúcna je hru prerobiť do OOP štandardu jazyka PHP. Hra bola testovaná na PHP 5.6, kde fungovala, momentálne je umiestnená na PHP 7, kde ale nefunguje správne funkcia mail pre odosielanie potvrdzovacích emailov, z toho dôvodu sú účty aktivované okamžite.

Hra mala v štádiu testovania registrovaných maximálne 250 hráčov, v tom čase bola hra umiestnená iba na free doméne 3. radu. Záujem o hru teda je a je na vás, ake nové funkcie do hry pridáte. Pre akékoľvek informácie o hre ma prosím kontaktujte. Obrázky pozadí sú v licencii pre nekomerčné využitie. Pri komerčnom využití projektu je nutné obrázky zmeniť/zakúpiť.

Hra je dostupná nahttps://arduino.php5.sk/webwars/



 Update:
Projekt je dostupný zdarma bez garancie funkčnosti a obsahuje jednu z verzií hry:

 https://github.com/martinius96/Webwars

 

 

 

 

 

 

 



Prístupov 12162
Kvalita článku
hlasov 0

PRÍSPEVKY
SLEDOVAŤ
Prosím prihláste sa pre možnosť pridania komentáru.
Prihláste sa, alebo použite facebook login facebook login
ĎALŠIE ČLÁNKY V BLOGU
Update grafov, ukážkových kódov - Hladin...
[ 16.11.2024] (príspevkov 0)
XIAO ESP32-C6 od Seeed Studio
[ 10.11.2024] (príspevkov 0)
ESP-IDF v4.4.2 prechod na v5.2
[ 5.11.2024] (príspevkov 0)
Krabička pre RFID DOMINATOR 2.0
[ 18.10.2024] (príspevkov 0)
Známe neduhy - Ecotec 1.6E Opel/GM Chevr...
[ 8.10.2024] (príspevkov 0)
Cold-start BQ25570 vs BQ25504 od Texas I...
[ 2.8.2024] (príspevkov 0)
EG21-G - MQTT pripojenie na Thingsboard
[ 5.6.2024] (príspevkov 0)
Quectel EG21-G - HTTP request
[ 17.5.2024] (príspevkov 0)
Tip na darček k jubileu 60
[ 29.4.2024] (príspevkov 0)