Mac App läuft super aber nicht woanders

  • Mac App läuft super aber nicht woanders

    Hey Leute,

    am Wochenende war ich mit 2 Kollegen auf dem Global Game Jam wo wir in 48 Stunden ein Mac Spiel gebastelt haben.
    Video: vimeo.com/35831115

    Das ganze geschah mit Kobold2D, was ein Wrapper für Cocos2D ist.

    Problem jetzt, das Spiel funktioniert super auf unseren Rechnern, aber auf den meisten anderen nicht und ich konnte bisher kein Muster erkennen wann es läuft und wann nicht.
    Unsere Konfiguration:
    2x - Funktioniert aus der IDE und dem Release - Lion
    1x - Funktioniert vom Release aus, hat aber nur Xcode 3 installiert und daher nie probiert den Code auszuführen - Snow Leopard

    Einige Freunde denen wir das Spiel schickten konnten es teilweise aber nicht starten, hier unsere Infos:
    1x snow leopard (keine dev tools) - crash
    1x lion (dev tools) - crash
    1x lion (unbekannt ob dev tools) - geht

    Einer hat versucht es über die Konsole zu starten und diesen Fehler bekommen:
    $ ./TeaArena-Mac
    2012-01-30 12:23:07.793 TeaArena-Mac[586:507] *** -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0]

    Ich hab nach initWithObjects in unserem Projekt gesucht und nichts gefunden. In den referenzierten Libs wird die Methode zwar benutzt, aber der entsprechende Code wird nicht ausgeführt.

    Ein anderer Crash Report: pastie.org/3281685

    Wir sind auf der Suche nach mehr Leuten zum Testen um rauszufinden warum es nicht geht, aber ich hab irgendwie keine Ahnung wie ich den Fehler noch finden kann. Hab ich vergessen was zu verpacken? Ich hab einfach in Xcode Product/Archive gemacht.
    Gibt es noch ne gute Möglichkeit auf fremden Systemen den Fehler zu finden? Ein spezielles Release das die Fehlerstelle mitschreibt oder so?

    Ihr könnt das Spiel inklusive Source (aber ohne Kobold2D( hier runterladen.

    Direkt: globalgamejam.org/sites/defaul…12/2551/Tea%20Arena_0.zip
    Übersicht: globalgamejam.org/2012/tea-arena

    Ich würde mich sehr freuen wenn ein par Leute es testen könnten und mir Feedback geben oder wenn jemand weiss ich ich mich besser an den Fehler rantasten kann.

    Besten dank :)
  • Ich habe mal ins Programmpaket rein geschaut. Da fehlt wohl zumindest das Framework von Kobold2D. Das heißt, auf Euren Rechnern habt Ihr das Framework installiert und deshalb wird es auch gefunden. Auf den Fremdrechnern gibt es das Framework nicht und deshalb läuft das Programm auch nicht. Ihr müsst das Framework schon mitliefern.

    Michael
  • Ne kobold liegt direkt als Source vor und ist auch so im Workspace drin. Das ist keine referenzierte Lib oder so.
    Das Spiel läuft ja irritierenderweise auch bei dem der den Code nie ausgeführt hat weil er nur die Grafiken gemacht hat. Ich hab ihm auch einfach die App geschickt und lief.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von meno ()

  • meno schrieb:

    am Wochenende war ich mit 2 Kollegen auf dem Global Game Jam wo wir in 48 Stunden ein Mac Spiel gebastelt haben.


    Es ist normal dass man zum Fehlersuchen ein Vielfaches der Zeit braucht, die man fürs Codieren ("basteln") des Prototyps einsetzt.

    Solche sporadischen Fehler sind auch noch die schwierigsten.
    Meistens ist es ein Speicherverwaltungsfehler / dangling Pointer.

    -- hns
  • äh ja danke für die info, ich programmiere ("entwickle") nicht seit gestern und der Fehler liegt nicht an nem dangling Pointer weil das spiel wie gesagt bei uns fehlerfrei läuft und der Bildschirm sofort schwarz wurde und nicht erst nach ner Zeit. Der Fehler ist übrigens gefunden. Es lag an der Schriftart die wir nutzten. Wir haben die alle installiert, keine Ahnung wo die herkommt weil das keine Absicht war, aber scheinbar ist es keine Systemfont. Wird jetzt behoben und endlich weiter gemacht :)