Kunde
1. Über die Spiel-Engine
Als ich im März 2015 begann, mich auf die Entwicklung von H5-Spielen vorzubereiten, war das erste Problem, auf das ich stieß, die Auswahl der Engine.
Zu dieser Zeit gab es drei Haupt-2D-Engines auf dem Markt: Egret, Layabox und Cocos2D-Js.
Einerseits liegt es daran, dass ich cocos2d-x (c++) mehr als ein Jahr lang verwendet habe, um Clients für mobile Spiele zu erstellen, also habe ich mich natürlich für cocos2d-js entschieden. Zum anderen lag es daran, dass es zu diesem Zeitpunkt noch nicht viele erfolgreiche Projekte mit den beiden anderen Motoren auf dem Markt gab.
Jedes Versionsupdate der Cocos-Engine wird so schnell wie möglich in unserem Spiel getestet.
Wenn wir feststellen, dass die Leistung des Spiels auf Android-Telefonen erheblich verbessert wird, werden wir es zusammen mit der Engine-Version aktualisieren. Auf den Schultern von Giganten können wir mit halbem Aufwand das Doppelte des Ergebnisses erzielen.
Von v3.5 im März 2015 über v3.8 im September 2015 bis v3.9 im November 2015, bis zur neuesten v3.12 im Juli 2016. Wir haben die Spiel-Engine insgesamt dreimal aktualisiert!
PS: Der OpenGl-Test in js-tests konnte den Laufeffekt auf dem echten Android-Gerät bis Version 3.12 nicht erkennen, was mich in Tränen ausbrechen ließ!
2. Über Datenverschlüsselung und Kommunikationsprotokolle
Da es sich um ein starkes Netzwerkspiel handelt, kann es nur ein Websocket sein. Da unser ursprünglicher Client und Server für mobile Spiele zuvor TCP-Socket waren, handelte es sich bei den übertragenen Inhalten um SHA1-verschlüsselte Binärdaten in einem benutzerdefinierten Format.
Die erste Schwierigkeit des Projekts besteht also darin, wie man mit js die binäre Kodierung und Dekodierung von JSON-Strings sowie die Sha1-Verschlüsselung und -Entschlüsselung implementiert.
TODO: Tatsächlich ist es nicht notwendig, jeden Uplink und Downlink zu verschlüsseln, zu kodieren und zu dekodieren. Dies führt zu einer übermäßigen Belastung der Client- und Server-CPUs. Sie müssen nur einige wichtige Ereignisse schützen (z. B. Anmelden, Aufladen, Abzug von Goldmünzen usw.)!
Stellungnahme:
Alle Ressourcen auf dieser Website werden von Internetnutzern beigesteuert und veröffentlicht oder von großen Download-Sites nachgedruckt. Bitte überprüfen Sie selbst die Integrität der Software! Alle Ressourcen auf dieser Website dienen nur zum Lernen und Nachschlagen. Bitte verwenden Sie sie nicht für kommerzielle Zwecke, da Sie sonst für alle daraus entstehenden Folgen verantwortlich sind! Wenn es einen Verstoß gibt, kontaktieren Sie uns bitte, um ihn zu löschen und zu entfernen. Kontaktinformationen: admin@php.cn