Izvorni kod igre stolnog tenisa: Sunset Rally, fizika i kampanja
3D igra stolnog tenisa za preglednik, otvorena datoteku po datoteku: gdje žive fizika, bodovanje, kampanja i lokacije te što prvo mijenjati.

Ako trebate izvorni kod igre stolnog tenisa koji možete postaviti i mijenjati, Sunset Rally je gotova 3D igra stolnog tenisa za preglednik s kampanjom od devet mečeva, tri CPU protivnika, radionicom i cijelim TypeScript projektom, za 39 USD po cjeniku. Mapa igre već je izgrađena i nije minificirana, pa je možete prvo postaviti, a kod čitati kasnije.
Sportske igre se teže prilagođavaju nego što izgledaju, jer zabava leži u fizici i upravljanju, a ne u izbornicima. Ovaj vodič pokazuje gdje je svaki od tih dijelova u projektu Sunset Rally, što možete sigurno promijeniti i što ovo izdanje ne uključuje.
Kako igra stolnog tenisa funkcionira
Mečevi idu do sedam poena protiv CPU protivnika. Igrači pomiču pokazivač ili povlače da upravljaju veslom, a udarci su automatski. Guranje prema gore dodaje snagu, pomicanje u stranu postavlja loptu, povlačenje prema dolje izvodi drop shot, a loptica koja se digne tu je da bude smečirana.
Neobavezna pomoć, koju igrači mogu uključiti i isključiti tijekom meča, pomaže veslu da pronađe visinu loptice. To je važno za javnu stranicu: igrač prvi put na telefonu i dalje može vratiti loptu.
Postoje tri CPU protivnika sa svojim stilovima: strpljiva Capi, razigrana Nori i precizna Miso, svaki na Easy (lako), Normal (normalno) ili Hard (teško). Način Training (trening) daje partnera koji vraća svaku loptu. Nakon meča replay ponovno prikazuje odlučujući poen.
Isprobajte demo Sunset Rallyja
Što sadrži paket izvornog koda igre stolnog tenisa
- Mapa game/ spremna za hosting, već izgrađena i nije minificirana.
- TypeScript razvojni izvorni kod s Vite postavkom i resursima igre, u source/.
- Ilustrirani priručnici na engleskom i portugalskom sa stvarnim snimkama zaslona.
- Fontovi i zvučne datoteke spakirani uz igru.
- Obavijesti o licencama trećih strana i popis promjena.
Tehnologija je TypeScript, Three.js r184, Vite i WebGL2. Datoteke uključuju HTML, CSS, JavaScript, TypeScript i JSON. Sučelje dolazi na 14 jezika: engleskom, portugalskom, španjolskom, francuskom, njemačkom, talijanskom, nizozemskom, poljskom, turskom, ruskom, indonezijskom, japanskom, korejskom i pojednostavljenom kineskom. Priručnici su samo na engleskom i portugalskom.
Sadržaj oko mečeva također je dio paketa: Sunset Circuit od devet mečeva u tri faze, tri lokacije, Sunset garden (vrt zalaska), Sakura garden (sakura vrt) i Seaside café (kafić na moru), ujutro, popodne, noću ili po kiši, te radionica u kojoj novčići iz pobjeda kupuju boje vesla, gumice, oblike, drške, drvo, traku za rubove, naljepnice te stilove loptica i stolova.
Gdje što živi u kodu
Priručnik svaki dio igre povezuje s datotekom. Ovo je popis koji držite otvoren dok radite:
- Campaign.ts: devet kampanjskih mečeva i njihovi ciljevi zvjezdica.
- Places.ts: kako svaka lokacija izgleda.
- physics.ts: fizika loptice i vesla.
- match.ts: pravila bodovanja i meča.
- i18n.ts: tekst sučelja na engleskom i portugalskom; ostali jezici su u mapi locales.
- styles.css: stil izbornika i ekrana.
Svaki kampanjski meč ima do tri zvjezdice: pobijedite, pogodite tri kuta i odigrajte razmjenu od deset udaraca. To je 27 zvjezdica, a čišćenje svake lokacije donosi nagradu iz radionice. Budući da su uvjeti za zvjezdice u jednoj datoteci kampanje, kampanju možete učiniti lakšom ili težom bez traženja po kodu.
Što prvo promijeniti u predlošku stolnog tenisa
Predlažemo ovaj redoslijed, od niskog do visokog rizika.
- Tekst sučelja i naziv igre, u i18n.ts i mapi locales.
- Boje i ekrani, u styles.css.
- Stilovi radionice za vesla, loptice i stolove, tako da oprema nosi vaš brend.
- Vizuali lokacija, u Places.ts.
- Kampanjski mečevi i ciljevi zvjezdica, u Campaign.ts.
- Fizika i bodovanje, u physics.ts i match.ts, samo ako trebate drugačiji osjećaj.
Priručnik dodaje tri pravila koja vrijedi slijediti. Držite id-ove otključavanja, id-ove predmeta i ključeve za spremanje stabilnima ili igrači gube ono što su zaradili. Napravite sigurnosnu kopiju prije početka. Mijenjajte jednu značajku u jednom trenutku da znate koja izmjena je što uzrokovala.
Bijela oznaka je dopuštena: vaše ime i logotip, ili klijentovi, mogu zamijeniti naše.
Ponovna gradnja, hosting i ugradnja
Za igranje ništa ne treba graditi. Prenesite sadržaj mape game/ na bilo koji HTTP(S) hosting koji poslužuje statične datoteke, zadržite relativne putanje i otvorite adresu. Nisu potrebni PHP, baza podataka ni račun.
Za promjenu izvornog koda trebate Node.js (preporučuje se 24 LTS) i npm. Uredite TypeScript, ponovno izgradite s Viteom i zamijenite postavljenu mapu game/ novim izlazom.
Preglednik treba JavaScript, ES module i WebGL2. Podržane su dodirne i miš kontrole, a kontrole se prilagođavaju veličini ekrana. Performanse ovise o pregledniku i uređaju, pa testirajte na telefonima koje koriste vaši igrači.
- Prenesite game/ u testnu mapu na svom hostingu.
- Odigrajte jedan meč na stolnom pregledniku i jedan na telefonu.
- Napravite promjene teksta i stilova u source/ i ponovno izgradite.
- Zamijenite cijelu testnu mapu, pa ponovno igrajte.
- Premjestite je na konačnu adresu.
Što ovo izdanje ne uključuje
Ovo izdanje igra se protiv CPU-a: kampanja, slobodni mečevi i trening. Online višeigrački način, online sobe, online ljestvice i računi u oblaku nisu dio paketa, a nema ni načina za dva igrača. Nema oglasnih SDK-ova ni računa, a nativne aplikacije i hosting nisu uključeni.
Napredak ostaje u pregledniku igrača: zvjezdice kampanje, rezultati, statistika, replay i predmeti iz radionice. Nijedan poslužitelj ni račun se ne koristi, pa nema što održavati nakon lansiranja.
Ako trebate online način, SDK portala, verziju za trgovinu aplikacija ili instalaciju na svom poslužitelju, to je zasebna usluga koju nudimo po projektu.
Zatražite ponudu za prilagođeni rad
Licenca, podrška i cijena u jednom odlomku
Jedna kupnja daje trajnu, nekskluzivnu licencu za jedan krajnji proizvod, vaš ili jednog klijenta, koji igrači smiju koristiti besplatno ili uz oglase. Smijete mijenjati kod, grafiku i zvuk unutar tog proizvoda, ali ne smijete preprodavati ni dijeliti predložak, njegov izvorni kod ili resurse zasebno. Podrška traje 6 mjeseci, ili 12 uz proširenje pri plaćanju, i pokriva instalaciju i korištenje datoteka te ispravljanje ponovljivih grešaka; prilagodba, hosting i integracija SDK-a ili portala nude se zasebno. Cijena po cjeniku je 39 USD. Do 30. studenoga 2026. Black Friday promocija daje 15% popusta na svaki predložak, pa Sunset Rally košta 33,15 USD, a od 1. prosinca cijene se vraćaju na cjenik.
Često postavljana pitanja
Trebam li nešto graditi da koristim ovu igru stolnog tenisa?
Ne. Mapa game/ je već izgrađena. Prenesite njezin sadržaj na statički web-poslužitelj i otvorite adresu. Node.js i npm potrebni su samo ako mijenjate TypeScript i ponovno gradite.
Postoji li način za dva igrača ili online?
Ne. Ovo izdanje igra se protiv CPU-a u kampanji, slobodnim mečevima i treningu.
Mogu li promijeniti kampanju i ciljeve zvjezdica?
Da. Mečevi i uvjeti za zvjezdice nalaze se u Campaign.ts. Nakon toga ponovno izgradite s Node.js.
Mogu li promijeniti ponašanje loptice?
Da. Fizika je u physics.ts, a pravila bodovanja u match.ts. Mijenjajte jednu stvar u jednom trenutku i testirajte protiv svakog protivnika.
Radi li na telefonima?
Da, s dodirnim kontrolama koje se prilagođavaju ekranu. Potreban je WebGL2, a performanse ovise o uređaju, pa testirajte telefone koje ciljate.
Gdje se napredak sprema?
U pregledniku igrača. Ne koristi se nikakav poslužitelj ni račun.
Ostali predlošci sportskih igara za usporedbu
Ako gradite sportski kutak za stranicu, dva druga predloška dobro stoje uz Sunset Rally. Velvet Pool je bilijar s 8 kugli s CPU protivnikom i lokalnim načinom za dva igrača, napisan u čistom JavaScriptu s WebGL2, 39 USD po cjeniku. Puttide je 3D mini golf s 30 rupa, izgrađen na Three.js i Rapieru, 39 USD po cjeniku. Oba imaju 14 jezika sučelja.
Sunset Rally odgovara portalima i stranicama koje žele sportsku igru s kratkim mečevima, studijima koji isporučuju brendiranu igru jednom klijentu te programerima koji žele čitljiv TypeScript i Three.js projekt iz kojeg mogu učiti ili ga proširiti. Ako trebate dva igrača na istom uređaju, Velvet Pool ima taj način, a Sunset Rally nema.
Pogledajte Velvet Pool, igru s 8 kugli
Pogledajte Puttide, 3D mini golf
Kupnja dva ili više predložaka u istoj narudžbi smanjuje svaku licencu: 5% popusta za dva, 10% za tri, 15% za četiri i 20% za pet ili više.
