Opas

Pöytätennispelin lähdekoodi: Sunset Rallyn tiedostot ja kampanja

3D-pingispeli selaimeen, avattuna tiedosto kerrallaan: missä fysiikka, pisteytys, kampanja ja paikat ovat ja mitä muutetaan ensin.

Sunset Rallyn pääkuva: punainen maila ja pallo vihreällä pöytätennispöydällä puutarhaterassilla auringonlaskussa, kirsikankukkien ja lyhtyjen alla.

Jos tarvitset pöytätennispelin lähdekoodia, jonka voit isännöidä ja muuttaa, Sunset Rally on valmis 3D-pingispeli selaimeen, jossa on yhdeksän ottelun kampanja, kolme tietokonevastustajaa, verstas ja täysi TypeScript-projekti. Listahinta on 39 dollaria. Pelikansio on jo käännetty ja pienentämätön, joten voit ladata sen ensin ja lukea sen myöhemmin.

Urheilupelit ovat vaikeampia muokata kuin miltä näyttävät, koska hauskuus on fysiikassa ja ohjauksessa, ei valikoissa. Tämä opas näyttää, missä kukin näistä on Sunset Rally -projektissa, mitä voit muuttaa turvallisesti ja mitä tämä versio jättää pois.

Miten pingispeli pelataan

Ottelut menevät seitsemään pisteeseen tietokonevastustajaa vastaan. Pelaaja liikuttaa osoitinta tai vetää mailaa, ja osumat ovat automaattisia. Ylöspäin liikkeellä lisätään voimaa, sivusuunnassa asetetaan pallo, alaspäin vedolla pelataan pudotusheitto, ja pallo, joka nousee ylös, on tarkoitettu smashattavaksi.

Valinnainen apu, jonka pelaaja voi kytkeä päälle ja pois ottelun aikana, auttaa mailaa löytämään pallon korkeuden. Julkiselle sivustolle tämä on tärkeää: ensikertalainen puhelimella voi silti palauttaa pallon.

Kolme tietokonevastustajaa on omilla tyyleillään: pidättyväinen Capi, leikkisä Nori ja tarkka Miso, kukin tasoilla Easy (helppo), Normal (normaali) tai Hard (vaikea). Harjoitustila antaa kumppanin, joka palauttaa jokaisen pallon. Ottelun jälkeen uusinta näyttää ratkaisevan pisteen uudelleen.

Pelaa Sunset Rallyn demo

Mitä pöytätennispelin lähdekoodi sisältää

  • Valmis isännöitävä game/-kansio, jo käännetty ja pienentämätön.
  • TypeScript-kehityslähdekoodi Vite-asetuksineen ja pelin resursseineen kansiossa source/.
  • Kuvitetut käsikirjat englanniksi ja portugaliksi todellisilla kuvakaappauksilla.
  • Pelin mukana tulevat fontit ja äänitiedostot.
  • Kolmannen osapuolen lisenssihuomautukset ja muutosloki.

Pohjana on TypeScript, Three.js r184, Vite ja WebGL2. Tiedostoja ovat HTML, CSS, JavaScript, TypeScript ja JSON. Käyttöliittymä on 14 kielellä: englanti, portugali, espanja, ranska, saksa, italia, hollanti, puola, turkki, venäjä, indonesia, japani, korea ja yksinkertaistettu kiina. Käsikirjat ovat vain englanniksi ja portugaliksi.

Otteluiden ympärillä oleva sisältö kuuluu myös pakettiin: yhdeksän ottelun Sunset Circuit kolmessa vaiheessa, kolme paikkaa (Sunset-puutarha, Sakura-puutarha ja Seaside-kahvila) aamu-, iltapäivä-, yö- tai sade-tunnelmassa sekä verstas (Workshop), jossa voitoista kertyneillä kolikoilla ostetaan mailojen värejä, kumeja, muotoja, kahvoja, puita, reunanauhoja, tarroja sekä pallo- ja pöytätyylejä.

Missä asiat ovat koodissa

Käsikirja yhdistää pelin osat tiedostoihin. Tämä on lista, joka kannattaa pitää auki työskennellessä:

  • Campaign.ts: yhdeksän kampanjaottelua ja niiden tähtitavoitteet.
  • Places.ts: miltä kukin paikka näyttää.
  • physics.ts: pallon ja mailan fysiikka.
  • match.ts: pisteytys ja ottelusäännöt.
  • i18n.ts: englanninkielinen ja portugalinkielinen käyttöliittymän teksti; muut kielet ovat locales-kansiossa.
  • styles.css: valikoiden ja näkymien tyylit.

Jokaisessa kampanjaottelussa on enintään kolme tähteä: voita, osu kolmeen kulmaan ja pelaa kymmenen pallon vaihto. Tähtiä on yhteensä 27, ja jokaisen paikan läpäisy ansaitsee verstaspalkinnon. Koska tähtiehdot ovat yhdessä kampanjatiedostossa, voit tehdä kampanjasta helpomman tai vaikeamman etsimättä koodista.

Mitä muuttaa ensin pöytätennis-pohjassa

Ehdotamme tätä järjestystä, matalasta riskistä korkeaan.

  1. Käyttöliittymän teksti ja pelin nimi, tiedostoissa i18n.ts ja locales-kansio.
  2. Värit ja näkymät tiedostossa styles.css.
  3. Verstaan tyylit mailoille, pallolle ja pöydille, jotta varusteet kantavat brändiäsi.
  4. Paikkojen ulkoasu tiedostossa Places.ts.
  5. Kampanjaottelut ja tähtitavoitteet tiedostossa Campaign.ts.
  6. Fysiikka ja pisteytys tiedostoissa physics.ts ja match.ts, vain jos tarvitset erilaisen tuntuman.

Käsikirja lisää kolme sääntöä, joita kannattaa noudattaa. Pidä avaus-tunnukset, esinetunnukset ja tallennusavaimet vakaina, tai pelaajat menettävät ansaitsemansa. Varmuuskopioi ennen aloittamista. Muuta yhtä ominaisuutta kerrallaan, jotta tiedät, mikä muutos aiheutti minkäkin.

Valkoinen brändäys on sallittu: oma nimesi ja logosi tai asiakkaasi voi korvata meidän.

Uudelleenkäännös, isännöinti ja upottaminen

Pelaamiseen mitään ei tarvitse kääntää. Lataa game/-kansion sisältö mihin tahansa HTTP(S)-palvelimeen, joka tarjoaa staattisia tiedostoja, säilytä suhteelliset polut ja avaa osoite. PHP:tä, tietokantaa tai tiliä ei tarvita.

Lähdekoodin muuttamiseen tarvitset Node.js:n (suositellaan 24 LTS) ja npm:n. Muokkaa TypeScriptiä, käännä Viteella ja korvaa isännöity game/-kansio uudella tulosteella.

Selaimen täytyy tukea JavaScriptiä, ES-moduuleja ja WebGL2:ta. Kosketus- ja hiirihallinta ovat molemmat tuettuja, ja ohjaimet mukautuvat näytön kokoon. Suorituskyky riippuu selaimesta ja laitteesta, joten testaa pelaajiesi puhelimilla.

  1. Lataa game/ testikansioon isännöintipalvelimellesi.
  2. Pelaa yksi ottelu pöytäkoneen selaimella ja yksi puhelimella.
  3. Tee teksti- ja tyylimuutoksesi source/-kansioon ja käännä uudelleen.
  4. Korvaa koko testikansio ja pelaa uudelleen.
  5. Siirrä lopulliseen osoitteeseen.

Mitä tämä versio ei sisällä

Tämä versio pelataan tietokonetta vastaan: kampanja, vapaa ottelu ja harjoitus. Verkkomoninpeli, verkkohuoneet, verkkotulostaulut ja pilvitilit eivät kuulu pakettiin, eikä kaksinpeliä ole. Mainos-SDK:ita tai tilejä ei ole, eikä natiiviversioita tai isännöintiä sisälly.

Edistyminen pysyy pelaajan selaimessa: kampanjatähdet, tulokset, tilastot, uusinnat ja verstaskohteet. Palvelinta tai tiliä ei käytetä, joten julkaisun jälkeen ei ole mitään ylläpidettävää.

Jos tarvitset verkkotilan, portaali-SDK:n, sovelluskaupparversion tai asennuksen omalle palvelimellesi, se on erillinen palvelu, joka hinnoitellaan projektikohtaisesti.

Pyydä tarjous mukautetusta työstä

Lisenssi, tuki ja hinta yhdessä kappaleessa

Yksi osto antaa ikuisen, ei-yksinomaisen lisenssin yhteen lopputuotteeseen, omaasi tai yhden asiakkaasi. Pelaajat voivat käyttää sitä ilmaiseksi tai mainostuloilla. Saat muuttaa koodia, kuvitusta ja ääntä kyseisessä tuotteessa, mutta et saa myydä tai jakaa pohjaa, sen lähdekoodia tai omaisuutta erikseen. Tuki kestää 6 kuukautta, tai 12 kuukautta kassalla valittavalla laajennuksella, ja kattaa tiedostojen asennuksen ja käytön sekä toistettavissa olevien virheiden korjaamisen. Mukautus, isännöinti sekä SDK- tai portaaliintegraatio hinnoitellaan erikseen. Listahinta on 39 dollaria. Black Friday -tarjous antaa 15 % alennuksen kaikista pelipohjista 30. marraskuuta 2026 asti, joten Sunset Rally maksaa 33,15 dollaria, ja 1. joulukuuta alkaen hinnat palaavat listahintoihin.

Lue koko ehdot

Usein kysytyt kysymykset

Pitääkö minun kääntää mitään, jotta voin käyttää tätä pingispeliä?

Ei. Kansio game/ on jo käännetty. Lataa sen sisältö staattiseen web-palvelimeen ja avaa osoite. Node.js ja npm tarvitaan vain, jos muutat TypeScriptiä ja käännät uudelleen.

Onko kaksinpeli- tai verkkotilaa?

Ei. Tämä versio pelataan tietokonetta vastaan kampanjassa, vapaissa otteluissa ja harjoituksessa.

Voinko muuttaa kampanjaa ja tähtitavoitteita?

Kyllä. Ottelut ja tähtiehdot ovat tiedostossa Campaign.ts. Käännä sen jälkeen uudelleen Node.js:llä.

Voinko muuttaa pallon käyttäytymistä?

Kyllä. Fysiikka on tiedostossa physics.ts ja pisteytyssäännöt tiedostossa match.ts. Muuta yksi asia kerrallaan ja testaa jokaista vastustajaa vastaan.

Toimiiko se puhelimilla?

Kyllä, kosketusohjauksilla, jotka mukautuvat näyttöön. WebGL2 vaaditaan, ja suorituskyky riippuu laitteesta, joten testaa kohdepuhelimesi.

Minne edistyminen tallennetaan?

Pelaajan selaimeen. Palvelinta tai tiliä ei käytetä.

Muut urheilupelipohjat vertailuun

Jos rakennat urheilukulmaa sivustolle, kaksi muuta pohjaa sopii Sunset Rallyn viereen. Velvet Pool on 8-pallo-biljardipeli tietokonevastustajalla ja paikallisella kaksinpelillä, kirjoitettu tavallisella JavaScriptillä WebGL2:lla, 39 dollarin listahinnalla. Puttide on 3D-minigolf, jossa on 30 reikää, rakennettu Three.js:llä ja Rapierilla, 39 dollarin listahinnalla. Molemmissa on 14 käyttöliittymän kieltä.

Sunset Rally sopii portaaleille ja sivustoille, jotka haluavat urheilupelin lyhyillä otteluilla, studioille, jotka toimittavat brändätyn pelin yhdelle asiakkaalle, ja kehittäjille, jotka haluavat luettavan TypeScript- ja Three.js-projektin oppia tai laajentaa. Jos tarvitset kaksi pelaajaa samalle laitteelle, Velvet Poolissa on se tila ja Sunset Rallyssä ei.

Katso Velvet Pool, 8-pallopeli

Katso Puttide, 3D-minigolf

Kahden tai useamman pelipohjan tilauksessa lisenssi halpenee: 5 % kahdesta, 10 % kolmesta, 15 % neljästä ja 20 % viidestä tai useammasta.

Hanki Sunset Rallyn pöytätennispelin lähdekoodi