Enttäuschung

  • #1, by constantinWednesday, 27. September 2017, 13:54 7 years ago
    Nach anfänglicher Euphorie muss ich nun doch leider sagen, dass Visionaire doch nur die einfachsten Ideen leicht umsetzbar macht. Will man etwa nur ein Objekt auf die Position eines anderen legen, braucht man LUA. Will man ein Objekt um x Pixel verschieben, braucht man LUA. Will ich die Position eines Textes verschieben, brauche ich LUA. Es ist mir als Laien natürlich vollkommen unverständlich, warum das so sein muss. Sicher hat das gute Gründe, warum ich dazu auch ein eigenes Skript brauche, aber es führt doch dazu, dass ich nicht nur die Sprache Visionaires lernen muss, sondern auch eine ganze Programmiersprache. 
    Dazu stören mich diverse Bugs. Manche lassen sich kurioserweise beheben, wenn man eine Pause setzt, andere - etwa jener, dass ein Charakter plötzlich verschwindet -, indem man den Charakter auf die Position 0,0 setzt, ausschaltet und wieder einschaltet. 
    Visionaire ist wirklich ein tolles Programm, um einfache Ideen umzusetzen. Ich sehe mich aber nun damit konfrontiert, dass ich mich zunehmend über die für mich nicht nachvollziehbaren Einschränkungen ärgere. Ich frage mich: Wenn ich ohnehin eine Programmiersprache lernen muss, wieso es dann LUA sein soll. 

    Forum Fan

    167 Posts


  • #2, by SimonSWednesday, 27. September 2017, 14:49 7 years ago
    Es kommt natürlich immer drauf an, was man machen will. Visionaire ist halt auf eine bestimmte Art ausgerichtet. Wenn man mehr Funktionalität braucht, muss man skripten mit Lua, so ist das einfach. Es wird natürlich zukünftig auch vieles einfacher werden, aktuell entwickle ich auch ein Pluginsystem. Aber grundsätzlich hat man bei vielen Engines dasselbe Problem. Und Visionaire ist da tatsächlich noch eine der intuitivsten Engines.

    Man kann viele Dinge nicht beim Fade machen, das ist eine Sache, wo sich schon einige dran gestoßen haben. Das hätte ich auch anders designt, aber es ist halt historisch gewachsen. Also an Position 0,0 könnte ich auch keinen Charakter sehen, weil er ja außerhalb des Bildes ist. Ich weiß auch nicht was du einschalten/ausschalten meinst.

    Es scheint mir so als würdest du Dinge machen wollen, die nicht dem klassischen Target entsprechen, da muss man leider sehr oft nachhelfen.

    Was ist jetzt genau das Problem mit Lua ? Ich kann aus Erfahrung sagen (15 Jahre Programmiererfahrung), dass es für so eine Engine so gut wie keine Alternative gibt, außer eine eigene zu entwickeln. Lua gehört zu den einfachen Programmiersprachen. Was würdest du lieber nutzen ?

    Thread Captain

    1581 Posts

  • #3, by sebastianWednesday, 27. September 2017, 15:47 7 years ago
    ich glaube das Problem ist nicht unbedingt lua selbst, sondern das Verständnis wie man es mit der Engine nutzen kann.
    Das Data Structure Modell muss erstmal verstanden werden. 



    Zudem wirb VS ja regelrecht mit der Einfachheit der Nutzung ... Lua gehört dann eher zu den erweiterten Sachen und wird aber schon für viele Sachen genutzt weil es die Engine nativ noch nicht unterstützt. 

    Thread Captain

    2346 Posts

  • #4, by MachtnixWednesday, 27. September 2017, 16:42 7 years ago
    Lua hat den Vorteil, dass es inzwischen häufig verwendet wird. An alle digitalen Modelleisenbahner z.B.: so benutzt eep inzwischen auch Lua, um Fahrstraßen zu schalten oder Beleuchtung zu steuern. Da Lua kostenfrei ist, also eine sinnvolle Sache. 
    Ich habe von allen Spieleengines Visionaire als das am wenigsten script-belastete begriffen. In allen anderen Engines geht es nur mit Scripting. In Wintermute muss man jede Position und Aktion scripten. Außerdem ist Vis das einzige, noch halbwegs deutsche Programm. Für ein Game musst du also in jeder anderen Engine mindestens genausoviel scripten. AGS geht noch. Die Werbung von Vis, ohne Programmieren ein Spiel zu erstellen, ist also nicht falsch, aber das ist eben wie Modellbahn: solange du mit einer Startpackung und einem Oval zufrieden bist, stört dich nix. Aber für Mehrzugverkehr in 6 Ebenen braucht man nun mal mehr. 
    Natürlich könntest du anstatt auf Lua auf Python umsteigen (die Game-Sprache schlechthin), aber dann musst du meist ALLES selber schreiben. 

    Thread Captain

    1097 Posts

  • #5, by constantinThursday, 28. September 2017, 07:11 7 years ago
    hallo,
    danke euch für eure antworten. es geht mir gar nicht um lua selbst. ich bin kein programmierer, sondern schriftsteller und dramatiker. deshalb fällt mir der umgang mit programmiersprachen (die letzte, die ich benutzt hatte, war basic vor über 20 jahren) ohnehin schon schwer. ich war/bin begeistert von visionaire, da es mir die möglichkeit bot, meine ideen auch als computerspiel umzusetzen. ich habe mir davor einige engines angesehen und visionaire stellte sich als die beste heraus. 
    nun scheint sich die arbeit mit visionaire aber aufzuspalten in einen teil, der mit der engine gemacht wird, und einen, der mit lua geschrieben wird. z.b. kann ich values aus visionaire nicht mit lua direkt ansprechen. umgekehrt muss ich variablen aus lua wieder transponieren. 

    das empfinde ich - weil ich natürlich nicht weiß, warum - als unnötig und unverständlich.

    die von mir erwähnten bugs habe ich bereits an anderer stelle beschrieben. vielleicht sind es auch gar keine und ich mache etwas falsch. wenn ich einen charakter mit "hide" verschwinden lasse und anschließend wieder mit "show" einblende, zeigt er sich nicht. ich muss ihn zuvor auf die position "0,0" setzen, anschließend mit "show" wieder einblenden und dann erst auf die richtige position setzen. vielleicht ist das aber auch ein kurioser workaround für ein ganz anderes problem, den ich mir da geschaffen habe. 
    andererseits "merkt" sich das programm nicht, wenn objekte verschoben werden. arflme hat erwähnt (wenn ich das richtig begriffen habe), dass es daran liegt, dass sie nicht wirklich verschoben werden, sondern nur "offset" sind. 

    liebe grüße,
    constantin

    Forum Fan

    167 Posts

  • #6, by constantinThursday, 28. September 2017, 07:13 7 years ago
    ps. weiß jemand, wie man lua lernen kann? ich bräuchte allerdings eine gute und vor allem auch für laien verständliche seite oder ein entsprechendes buch.

    Forum Fan

    167 Posts

  • #7, by sebastianThursday, 28. September 2017, 08:58 7 years ago
    Hi Constantin,

    ich weiß genau was du meinst. Programmieren selbst fand ich immer spannend, würde mich selbst aber nicht unbedingt als guter Code Jongleur beschreiben. Viele Sachen vergesse ich schnell wieder oder muss ich immer wieder nachschauen. Genauso bei Lua was es nicht unbedingt einfacher macht mit VS. Ich habe mich da immer eher auf die kreativen Möglichkeiten der Engine auseinander gesetzt... 

    Dennoch ist es hier der Reiz die grenzen der Engine zu erweitern ein großer Motivator für mich. 

    Ich selber lerne solche Sachen am besten nach dem Schema, dass wenn ich etwas brauche, dass ich explizit danach suche und entsprechend meinen Bedürfnissen dann anpasse. 
    Grundlegendes Verständnis über Lua kannst du dir zum Beispiel hier aneignen:


    (Kapitel  1 - 10)

    davon wirst du nicht unbedingt alles brauchen, aber du wirst lernen, wie Funktionen aufgebaut sind, wie Variablen funktionieren oder etwas mit Tabellen zu machen. 
    Reines durchlesen würde meiner Meinung nach reichen um für VS fit zu sein... 


    Einiges davon wirst du in VS wahrscheinlich nie anwenden müssen, aber rein von der Grundidee her könntest du alles, was mit Lua möglich ist auch irgendwie in die Engine kriegen. 

    Mit Lua alleine wirst du aber noch nichts anfangen können. Es ist nur die Sprache, riendu verwendest um auf die internen Werte der Engine bzwmdeines Spiels drauf zuzugreifen :
    Der eigentliche "schwere" Part ist die Kommunikation zwischen deinen Lua Skripten und der Datenstruktur von VS selbst. Hier habe ich die meisten Leute im Forum beobachtet wo es (Verständnis) Probleme gab. 

    Wie bei jeder Engine gibt es vorgefertigte Funktionen oder Objektbezeichnungen, die du in Lua dann verwenden kannst um z.B. einen Luawert in eine VS Value zu schreiben oder umgekehrt (geht also doch) , die Datenstruktur zu manipulieren (Objektpositionen ändern, Interfaces verschieben, Mauspositionen manipulieren ) , VS Aktionen/animation starten/beenden,  in bestimmte Abläufe "einklinken" um diese zu manipulieren, Gamepad support, etc. 

    Momentan plane ich hier genau solch ein Tutorial-Video der diesen Einstieg abdeckt. Allerdings bin ich momentan noch in den Untertitel Übersetzungsarbeiten von meinen Basis Tutotials, wo ich momentan noch kein Licht am Ende des Tunnels sehe... 

    Grüße 
    Sebastian 

    Thread Captain

    2346 Posts

  • #8, by caligarimarteThursday, 28. September 2017, 13:35 7 years ago
    z.b. kann ich values aus visionaire nicht mit lua direkt ansprechen.

    Doch, kannst du, wie Sebatian zwar erwähnt hat, hier hast du aber auch den Code dafür:

    Values.VALUENAME.Int

    Forum Fan

    145 Posts

  • #9, by MachtnixThursday, 28. September 2017, 20:19 7 years ago
    Wurde schon oft benannt: das Problem ist nicht Lua, sondern das Interface. Und das ist - bis auf die umtriebige Wiki-Arbeit von AFRLme - kaum zufriedenstellend dokumentiert. Zudem nur auf Englisch. 

    Lua selbst ist simpel und einfach nur eine Programmiersprache. Die Prinzipien sind grundlegend und ich benutze z.B. uralte Pascal-Codes von 1980, die kann man locker in Lua umsetzen. Es gibt Schleifen, Bedingungen, Arrays, Strings, Funktionen, Variablen. Mehr ist das nicht. 

    Erst die Vis-Bibliothek ist die Nuss. Wie und wo muss man welche Werte wohin schreiben und warum so und nicht anders. Mir haben da nur die Scriptbeiträge geholfen, die ich kopiert und in denen solange umgebastelt habe, bis irgendwie das Richtige rauskam. Professionell ist das nicht. 

    Du siehst: mir gehts wie dir. 

    Das wirkliche Problem ist das programmierische Denken. Wer gut mit Holz arbeiten kann, macht in Metall oft nur Murks. Wer also kein „Händchen“ für Programmier-Algorithmen hat, wer die Umsetzung einer Textaufgabe in eine Formel partout nicht hinkriegt, wird an jeder Sprache scheitern. Dann wäre es ehrlicher (und weniger kräftezehrend), sich mit einem Coder zusammenzutun. Man muss kein Spiel ganz alleine schaffen. Und wenn ich ehrlich bin, haben z.B. Sebastian oder AFRLme für mich meine Scripte geschrieben, weil ich es ohne ihre Forumshilfe nie geschafft hätte. 

    Für ein Standard-Adventure ist Vis ausreichend bestückt. Ich hatte glaube ich mit „hide“ keine Probleme. Vielleicht war auch der Ansatz anders. Der Rahmen, den Vis ohne Scripting erlaubt, ist zugegeben sehr, sehr eng. 

    Blender und Unity haben auch Möglichkeiten. Aber dann quäle ich mich doch lieber durch das Vis-Objektmodell und durch die Datenstruktur als durch 300 Seiten englisches und z.T. nicht vorhandenes Unity-Tutorial. 

    Thread Captain

    1097 Posts