Du bist nicht angemeldet.
Hi,
folgend eine kurze Anleitung fuer alle die unter Euch, die gerne mit der aktuellsten TVTower-Version spielen moechten.
Eigentlich wird TVTower ja mit dem kostenpflichtigen (nun) OpenSource BlitzMax kompiliert - doch mittlerweile funktioniert der Open-Source-Ersatz "BlitzMax NG" nahezu problemlos. Nahezu, da es derzeit noch Probleme mit dem Modul "maxmod2" gibt, ein Modul was wir nutzen um "gestreamtes" Audio benutzen zu koennen. Fuer "BlitzMax NG" habe ich den Quellcode von TVTower so modifiziert, dass derzeit einfach kein Sound genutzt wird.
Ergo wird euer "BMX-NG"-Kompilat leider stumm bleiben muessen. Auch ist die Kompilierzeit ein klein wenig hoeher als mit dem klassischen BlitzMax - dafuer koennt ihr aber 64 Bit erzeugen (und theoretisch auch fuer Android und RasPI ...).
Ok ... genug der Schlechtmacherei:
Laded Euch das Grundpaket herunter:
BlitzMaxNG.zip (Windows, Linux, Mac OS)
- entpacken
- nun einfach den Schritten in "readme_deutsch.txt" (bzw. "readme_englisch.txt")
folgen.
Nur kurz: Windowsnutzer werden "MinGW" installieren muessen, Linuxnutzer die GCC-Umgebung und Mac-User XCode.
Ok ... wenn dies erledigt ist, holt Ihr Euch TVTower:
- geht auf "https://github.com/GWRon/TVTower" und klickt dort rechts auf "Download ZIP"
- entpackt die ZIP Datei
- legt die Datei "version.txt" innerhalb von "TVTower/source" an (die wird dann mit einem Erstelldatum gefuellt)
- startet "maxide" (im BlitzMaxNG-Verzeichnis) und oeffnet "TVTower.bmx"
- waehlt bei "maxide":
- - "Program - Build Options" "Quick Build" aus, sonst nix
- - "Program - Architecture" "x86" aus
- klickt nun auf die Rakete (oder Strg+B bzw Strg+R) um eine eigene TVTower-Fassung zu kompilieren
PS: Alternativ zum Download der ZIP-Datei bei Github, koennt ihr natuerlich das GitHub-Repo klonen und direkt dort kompilieren ... eine Anleitung dazu stelle ich aber jetzt der uebersichthalber nicht zur Verfuegung.
Bei Fragen bitte nicht scheuen hier zu posten.
bye
Ron
Offline
in der readme_deutsch.txt vom MinGW steht:
- waehle das Installationsverzeichnis aus:
Falls Du BlitzMaxNG dort installiert hast:
c:\BlitzMaxNG
sollte das Zielverzeichnis folgendes sein:
c:\BlitzMaxNG\MinGW32
BlitzMaxNG installiert ?
das hatte mich etwas irritiert, da ich sehr wohl einen Unterschied zwischen entpackt und installiert mache. Gemeint ist also der Ort wohin BlitzMaxNG entpackt wurde.
gruß
~s~
Beitrag geändert von sushiTV (18.06.2015 18:39)
das Leben ist ein scheiß Spiel, hat aber ne geile Grafik
Offline
Hat geklappt.
Nur wurde nix in die "Version.txt" eingetragen.
Wird auch kein Datum am Spielrand angezeigt.
Aber verschmerzbar.
edit:
Nur, wo ist das Spiel jetzt hin?
Muss ich das jetzt erst speichern?
Oder ist das jetzt einfach die TVTower.debug?
Offline
Wenn Du als "Debug" kompilierst, dann wird daraus eine "TVTower.debug[.exe]" wenn nun Abstuerze passieren (waehrend aus MaxIDE "frisch kompiliert"), zeigt dir MaxIDE an welcher Stelle es abstuerzt (naja nicht immer, aber haeufig :-)).
@Version.txt
Kann sein, dass Du eine neue "bmk" (im /bin-Verzeichnis) brauchst - hatte da einen Bug gefunden, der dafuer sorgte, dass keine Versionskennung per "BMK-Script" gespeichert werden konnte. Alternativ bmk selbst kompilieren ;-)
https://github.com/bmx-ng/bmk
-> runterladen, die "bmk.bmx" kompilieren (kein GUI, kein Debug - aber optional Threaded um schneller parallel zu kompilieren). Die dann dort entstandene "bmk" sowie die Dateien "core.bmk" "make.bmk" und "bmk" aus dem Verzeichnis dann in "BlitzMaxNG/bin/" reinverschieben (ersetzen). Hoffe dann klappts auch mit dem Datum :-)
bye
Ron
Offline
Tja und damit wir alle kleinen Sorgentiere beisammen haben:
Maxide_linux startet nicht.
Wenn ich mit dem Terminal versuche, die maxide_linux zu starten (Natürlich vorher ins Verzeichnis.), sagt mir das Terminal, daß der Befehl unbekannt ist.
Das hat doch letztens aber funktioniert und ich habe seither nichts aktiv verändert.
Liegt das an Knoppix? Oder...?
Offline
mach mal im MaxIDE-Verzeichnis folgendes: "ls -l", dass zeigt dir dann alle Dateien mit ihren Rechten an.
Wenn der "Maxide_linux" das X-Bit (Ausfuehrrecht) fehlt, kannst Du das mit "chmod +x Maxide_linux" nachholen.
$ ls -l
total 5164
drwxr-xr-x 2 ronny ronny 4096 Jun 17 14:05 bin
drwxr-xr-x 2 ronny ronny 4096 Jun 17 11:23 doc
drwxr-xr-x 3 ronny ronny 4096 Jun 17 11:23 docs
-rwxr-xr-x 1 ronny ronny 7858 Jun 17 13:15 install.linux.dependencies.sh
drwxr-xr-x 2 ronny ronny 4096 Jun 17 11:23 lib
drwxr-xr-x 3 ronny ronny 4096 Jun 17 11:23 maxide.app
-rw-r--r-- 1 ronny ronny 790016 Jun 17 11:14 maxide.exe
-rwxr--r-- 1 ronny ronny 1937976 Jun 17 13:50 maxide_linux32
-rwxr--r-- 1 ronny ronny 2505175 Jun 17 07:51 maxide_linux64
drwxr-xr-x 2 ronny ronny 4096 Jun 18 15:14 MinGW32
drwxr-xr-x 4 ronny ronny 4096 Jun 17 11:23 mod
-rw-r--r-- 1 ronny ronny 739 Jun 17 14:04 readme_deutsch.txt
-rw-r--r-- 1 ronny ronny 677 Jun 17 14:05 readme_english.txt
drwxr-xr-x 2 ronny ronny 4096 Jun 17 11:23 tmp
bye
Ron
Offline
Das kontere ich dann so:
insgesamt 5136
drwxrwxrwx 1 knoppix knoppix 4096 Jul 21 14:44 bin
drwxrwxrwx 1 knoppix knoppix 0 Jul 22 08:17 cfg
drwxrwxrwx 1 knoppix knoppix 0 Jul 22 07:17 doc
drwxrwxrwx 1 knoppix knoppix 0 Jul 22 07:17 docs
-rwxrwxrwx 1 knoppix knoppix 7858 Jun 17 13:15 install.linux.dependencies.sh
drwxrwxrwx 1 knoppix knoppix 0 Jun 17 11:23 lib
drwxrwxrwx 1 knoppix knoppix 0 Jul 21 14:44 maxide.app
-rwxrwxrwx 1 knoppix knoppix 790016 Jun 17 11:14 maxide.exe
-rwxrwxrwx 1 knoppix knoppix 1937976 Jun 17 13:50 maxide_linux32
-rwxrwxrwx 1 knoppix knoppix 2505175 Jun 17 07:51 maxide_linux64
drwxrwxrwx 1 knoppix knoppix 0 Jul 21 14:44 MinGW32
drwxrwxrwx 1 knoppix knoppix 0 Jul 21 14:44 mod
-rwxrwxrwx 1 knoppix knoppix 739 Jun 17 14:04 readme_deutsch.txt
-rwxrwxrwx 1 knoppix knoppix 677 Jun 17 14:05 readme_english.txt
drwxrwxrwx 1 knoppix knoppix 0 Jul 28 09:08 tmp
Der chmod-Befehl hat auch nix gebracht...
Offline
Hi Ronny,
ich würde gerne aktiv an der Entwicklung von TVGigant mitwirken und mich in BlitzMax einarbeiten. Leider funktioniert das Kompilieren bei mir nicht. Ich bekomme diverse Fehlermeldungen, weil einige Bibliotheken nicht vorhanden sind. Ich habe mich allerdings genau an die Anleitung gehalten. Könntest du eine aktualisierte Version erstellen oder soll ich die Fehlermeldungen mal hier reinposten?
Grüße aus Essen
Henrik
Offline
Ja ich muss die Anleitung wohl mal aktualisieren.
Aber in Kuerze: das Komplettpaket kann man nun hier herunterladen:
https://github.com/bmx-ng/bmx-ng/releases
Da sollte _fast_ alles drin sein (vor allem ein schon ausgewaehltes "MinGW", das macht dann aus dem generierten C Code eine .exe).
Den Download entpacken - bspweise nach "C:\BlitzMaxNG"
Dann dies herunterladen:
https://github.com/bmx-ng/maxmod2.mod
("Download ZIP").
Nach "C:\BlitzMaxNG\mod" entpacken (also so, dass Du dann "C:\BlitzMaxNG\mod\maxmod2.mod\rtaudio.mod" usw. hast)
Ab dann weiter wie im Text beschrieben:
Ok ... wenn dies erledigt ist, holt Ihr Euch TVTower:
- geht auf "https://github.com/GWRon/TVTower" und klickt dort rechts auf "Download ZIP"
- entpackt die ZIP Datei
- legt die Datei "version.txt" innerhalb von "TVTower/source" an (die wird dann mit einem Erstelldatum gefuellt)
- startet "maxide" (im BlitzMaxNG-Verzeichnis) und oeffnet "TVTower.bmx"
- waehlt bei "maxide":
- - "Program - Build Options" "Quick Build" aus, sonst nix
- - "Program - Architecture" "x86" aus
- klickt nun auf die Rakete (oder Strg+B bzw Strg+R) um eine eigene TVTower-Fassung zu kompilieren
Falls ich mal im Code irgendwas uebersehen habe und es dadurch zu Warnungen mit BlitzMaxNG kommmt, kann man neben "Quick Build" auch aktivieren, dass "Overload Warnings" erzeugt werden, statt Fehler. Das passiert, wenn ich eine Kommazahl an eine Funktion schicke, die eine Ganzzahl erwartet. Das "alte" BlitzMax akzeptiert das still und heimlich, NG hingegen findet das nicht so doll :-)
Wenn Du damit nicht weiterkommst, einfach hier reinposten was Probleme bereitet.
bye
Ron
Offline
Super, vielen Dank. Werde ich testen.
EDIT: Alles getestet und nach etwas rumprobieren funktioniert das Kompilieren nun. Allerdings kann ich nun die erstellte TVTower.exe-Datei nicht ausführen. Es wird mir eine EXCEPTION_ACCESS_VIOLATION angezeigt.
¯\_(ツ)_/¯
Beitrag geändert von Henrik (05.05.2018 00:43)
Offline
Offline
setup available renderers -> no renderers but GL2SDL
TGraphicsManager.SetRendererAvailable(-1, False)
Dort?
Kuemmer mich bis heute Mittag drum, muss erstmal mit Junior einkaufen.
bye
Ron
Offline
Ja, genau die Stelle. Dort wird auf ein Array-Index zugegriffen, der nicht existiert.
"Unhandled Exception: Attempt to index array element beyond array length"
Beitrag geändert von Henrik (05.05.2018 10:22)
Offline
Oeffne mal die TVTower/source/Dig/base.util.graphicsmanagerbase.bmx
fast ganz oben gibt es eine Function SetRendererAvailable....
Die ersetzen mit:
Function SetRendererAvailable(index:Int, bool:Int=True)
If index >= RENDERER_AVAILABILITY.length Then Return
'setall
If index < 0
For Local i:Int = 0 Until RENDERER_AVAILABILITY.length
SetRendererAvailable(i, bool)
Next
Else
RENDERER_AVAILABILITY[index] = bool
EndIf
End Function
Der Fehler war, dass ich bei "-1" zwar alle auf den "bool"-Wert setze, aber aus Versehen habe ich die eine Anweisung auch fuer diesen Fall durchgefuehrt. Mit obiger Aenderung wird dies beseitigt.
Ich probiere das jetzt alles noch aus - und wuerde es dann auf github aktualisieren.
bye
Ron
Offline
Eine Alternative ist, das "Vanilla BlitzMax" zu nehmen (also das "originale"). Damit kannst Du zwar nur 32bit-Applikationen kompilieren, aber das sollte dennoch reichen.
https://www.gamezworld.de/files/BlitzMax.7z
runterladen, entpacken. Habe alle notwendigen Module bereits mit reingepackt. Es nutzt ein aelteres MinGW (4.6 statt 7.1) aber sollte klappen - damit erstelle ich ja die "TVTower.win32.exe" ;-)
Wenn Du das entpackt hast, kannst Du dort drin ebenfalls die MaxIDE oeffnen, das TVTower-Verzeichnis raussuchen, TVTower.bmx oeffnen und kompilieren.
bye
Ron
Offline
errr wie ist das hier gemeint ? zuviel "Programmierungschinesisch"
dh es gibt eine Testersion mit allen aktuellem geplantem Zeugs...für die Entwickler ? bevor man es für alle zum Download bereit stellt ?
oder soll es einfach nur die aktuellste Version sicherstellen ?
Offline
Die Anleitungen sind eigentlich mittlerweile "obsolet".
https://blitzmax.org
-> Windowspackung runterladen
https://github.com/TVTower/TVTower runterladen
...
Eigentlich so wie es bereits im Post
https://www.gamezworld.de/phpforum/viewtopic.php?pid=88007#p88007
beschrieben wurde.
@ Entwickler
Da ich der einzige Entwickler bin ... bin ich es auch, der hier "Testversionen" bereitstellt.
Kann gerne die Tage was neues (unfertiges) reinstellen.
bye
Ron
Offline
Puh... nicht so einfach eine BlitzMax-NG Umgebung unter Linux aufzusetzen.
Ich habs jedenfalls nicht geschafft
Die Anleitung im ersten Post scheint absolut out of date zu sein. Da stimmt wohl so ziemlich garnichts mehr. Effektiv habe ich jetzt ein Binärpaket von BlitzMax (ohne NG) von https://blitzmax.org/downloads/ heruntergeladen. Das läuft auch.
Aber: versuche ich damit TVTower zu compilieren (ausgehend von main.bmx im /source Ordner), dann bekomme ich direkt einen Compiler-Fehler
Duplicate identifier 'bom_utf8' found in module 'm_common' and module 'brl.xml'.
Gruß,
Kc
P.S.: Ich glaube die Antwort für das Captcha "Bitte beantworte folgende Aufgabe:
Gib die fehlenden Buchstaben an: gamezw**ld.de" ist falsch. "or" funtioniert nämlich nicht
Captcha ... gleich mal korrigiert - bestand seit 2016 der Fehler
@ Modulfehler
ahh ... ja, da kam ja "brl.xml" mit hinzu.
Kannst im Zweifel erstmal aus "mods/brl.mod" das "xml.mod" rausnehmen bis ich mich der Sache annehmen konnte.
Auch muss aus dem Hauptverzeichnis die TVTower.bmx genommen werden - und nicht die "source/main.bmx". Sonst koennte es mehr Basismodule einbinden als es soll - und da ich "libxml" benutze, kaeme es sonst zu Konflikten mit dem neuen "mxml".
Jetzt erstmal auf ins Schneegestoeber.
bye
Ron
Offline
Compiliert ausgehend von TVTower.bmx.
Compilerfehler:
Can't find interface for module 'maxmod2.ogg'
Und eine "brl.mod" kann ich nirgends finden :-/ Wo muss ich da suchen?
Gruß,
Kc
Entsprechend der Anleitung ...
Die Module landen in "BlitzMaxOrdner/mod/..."
brl.mod waere also bei "BlitzMaxOrdner/mod/brl.mod".
die maxmod2 gibt es angepasst fuer "NG" hier:
https://github.com/bmx-ng/maxmod2.mod
Downloaden und "maxmod2.mod" in das Verzeichnis "BlitzMaxOrdner/mod" reinschieben - ist sozusagen ein anderer "Namespace" verglichen mit "brl" (und anderen).
Generell gesagt:
NG-spezifisches, was nicht "unkompliziert" sowohl fuer "legacy/vanilla" als auch "NG" funktioniert:
https://github.com/bmx-ng
Blitzmax-Zeug an sich - bzw Module die Brucey gewrappt, geschrieben oder aktuell gehalten hat:
https://github.com/maxmods
Die zwei Links brauchen dich aber (jetzt erstmal noch) nicht zu interessieren, wenn es Dir nur darum geht "halbwegs aktuelle Techversionen" von TVTower erstellen zu koennen (halbwegs aktuell, da ich ja einiges noch nicht "comitted" habe).
bye
Ron
Offline