Ok ist schonmal ganz hilfreich, aber nicht zu empfehlen für Leute die noch nie ein eigenes SEnt erstellt haben, falls jemand eine Schritt-Für-Schritt Anleitung findet, dann sagt bitte bescheid
Ok ist schonmal ganz hilfreich, aber nicht zu empfehlen für Leute die noch nie ein eigenes SEnt erstellt haben, falls jemand eine Schritt-Für-Schritt Anleitung findet, dann sagt bitte bescheid
Guck ja nicht auf den deutschen Wiki-Eintrag. Ich habe da gerade mal drüber geguckt, und da sind in den Funktions-Beschreibungen etliche Fehler drin.
Mache es lieber so ähnlich, wie gamerpaddy es gesagt hat. Guck dir diverse Entities an, sieh dir die Wiki-Eintäge zu den verwendeten Funktionen an, und folge ganz dem Motto: "Learning by doing".
Ansonsten, wenn du wirklich nicht weiterkommen solltest, guck mal hier in dem Backup der alten Wiki.
Ich selbst habe Lua -was auch meine erste Programmiersprache überhaupt war- durch ein kleines bisschen lesen von Dokumentationen (lua.gts-stolberg.de, lua.org) und jede Menge rumprobieren erlernt. Einfach mal Scripts mit ein bisschen Mathematik, Table-Strukturen und Objekt bezogenem Kram usw. laufen gelassen, und geguckt was dabei raus kommt.
Das Problem ist aber, das die Einträge so gut wie garnicht auskommentiert sind und das es meines Wissens nach nur ein einziges SEnt dort gibt, den Bouncy BallIch möchte irgendein x beliebiges SEnt bauen hauptsache das ich mal sehe wie das überhaupt funktioniert!
Es muss jetzt nicht die Innovation schlechthin sein... meinetwegen auch nur eine Badewanne die in Feuer aufgeht wenn man diese aktiviert
Ich habe C++ als erste Sprache in der Ausbildung gelernt, ... Lua habe ich schnell gelernt da ich ja das meiste schon aus C++ kannte und mir lediglich ein paar Unterschiede merken müsste. Hab mir Irgendeinen LUA Editor runtergeladen und dort öffnete sich am Anfang ein Konsolenfenster in dem einem Lua in ungefähr 30 Schritten "beigebracht" wurde. Ich finde es jedenfalls sehr interessant in GMOD zu scripten, da ich sonst immer Dinge für diese Langweiligen Konsolenfenster programmieren sollte jetzt kann ich mich endlich auf einem 3 Dimensionalem Raum austoben
PS: Danke für den Link!
Geändert von Eddman (14.04.2013 um 19:08 Uhr)
Dann guck dir eben in irgendwelchen populären AddOns die SEnts an.
..oder guck dir die SEnts aus'm Sandbox-Gamemode an, da die alle sehr ordentlich und teilweise sogar mit Kommentaren ausprogrammiert sind. Zudem funktionieren die alle zu 100%, und rufen keine Errors hervor.
Dazu musst du auch die garrysmod content.gcf öffnen, und dann dem Pfad "garrysmod/gamemodes/sandbox/entities" nachgehen. Dort wieder unter "entities", kannst du dir die Standard Sandbox-Entities alle ansehen.
Allerdings hat garry die seit GM13 anders strukturiert, und zwar in einer einzelnen Datei, anstatt in einem Ordner, aufgeteilt in keine bis drei einzelne Dateien. Macht aber letztendlich keinen Unterschied, da der Inhalt praktisch der selbe ist.
wie gesagt habe ich bisher bloß den bouncy ball entdeckt, muss nochmal nachsehen.
Ich habe noch eine Grundlegende Frage, vielleicht kann mir jemand diese mal beantworten. Ich habe gerade den Pfad der Badewanne herausgefunden indem ich ihn mir im Spiel aufs ClipBoard kopieren lassen habe. Das ist der Pfad: models/props_c17/FurnitureBathtub001a.mdl nur wo genau soll sich dieser Ordner befinden? Ich finde Ihn nicht
source models.gcf
Der ganze HL²-Content ist grundsätzlich in den .gcf's.
Das ist Inhalt der nicht direkt von GMod kommt sondern von einem anderen Spiel. In diesem Falle müsste es Half-Life 2 sein. Du findest das Modul somit auch im Ordner des Spieles bzw. in der jeweiligen GCF-Datei.
Ok, danke euch beiden ! :)
EDIT: Ok alle Probleme aus dem SEnt des Wikieintrags sind behoben ,
1. der Eintrag "self:DrawEntityOutline( 1.0 )" in der <cl_init.lua> lässt das Objekt unsichtbar werden
2. der Rechtschreibfehler in der <shared.lua> bei der Variable ENT.IngiteDuration... es heisst "Ignite" nicht "Ingite"
3. Bei der Variable ENT.IgniteDuration muss das ENT. gelöscht werden. (Bei shared.lua und init.lua)
4. Im else Zweig der Funktion ENT:Use() muss der zweite Parameter gelöscht werden
5. Die Funktion "Extingush()" ist falsch geschrieben... so ists richtig -> Extinguish()
6. Mein eigener Fehler warum das Entity nicht gespawnt hatte... ich hatte vergessen Spawnable auf true zu setzen...
Also ganz ehrlich, ich finde es unmöglich das jemand ein Tutorial veröffentlich das nichtmal funktioniert weil es nicht zuvor getestet worden ist und sich dort Rechtschreibfehler im Code befinden.... Naja egal, hab trotzdem einiges daraus gelernt, nämlich das man nicht automatisch denken soll das die Tutorials alle getestet wurden und keine Fehler enthalten.
Geändert von Eddman (15.04.2013 um 17:35 Uhr)