Eventsystem v0.5d
ursprüngliche Präsentation: https://breadfish.de/index.php…le-event-system-by-alf21/
Heute möchte ich mein Event System releasen (Source ganz unten in diesem Post).
Es basiert wieder einmal auf dem Shoebill Plugin und hat sehr viele Zeilen
Ich habe vor einem halben Jahr aufgehört, daran zu schreiben und bin heute mal über den Code rüber gegangen, um den Code etwas zu bereinigen und dachte mir, dass es vllt. jmd. braucht. Ich werde sicher später daran weiterarbeiten.
Doch was kann dieses System??
(altes Video ^^)
(weitere Videos folgen)
Was sind die Besonderheiten?
- Es ist einfach erweiterbar (von Java allein aus)
- Es beinhaltet schon 2 Events: TTT (Trouble in Terrorist Town) und Catching (Fangespiel)
- Es ist auf Englisch und Deutsch ! (Multilanguage Support!)
- Es ist mit Java 8 geschrieben.
- Es gibt ein Grundsystem, das immer arbeitet, sodass für zusätzliche Events einfach nur die Features implementiert werden müssen (zusätzlich einfach erweiterbar)
- Viele Maps
- Standard-Textdraws
- Game/Event Timer
- Standard-Timer
- Gewinnerliste
- viele Einstellungen wie z.B.
- Autospawn
- automatisches Beenden, wenn z.B. keine Spieler mehr zu fangen sind oder das Event fertig ist bzw. jmd geleavt ist
- Freeze von Spielern
- automatisches reseten von Stats nach dem Event
- Teleport zum Event (Admin!)
- uvm... (siehe Tab Liste unten).
- Es unterstützt das Spielen auf freier Welt und auf Maps (eingegrenzte Flächen!)
- Es hat ein implementiertes Missionssystem, mit dem man einfach Missionen in Events und auch außerhalb erstellen kann.
- Ein implementiertes NPC System ist auch enthalten, jedoch noch nicht so ausgeklügelt
Was brauche ich dafür?
- Shoebill Plugin
- Localhost (also eigenen Computer) oder Root Server
- Java
[tabmenu]
[tab='Standardaktionen','']
- Event erstellen
- Event zerstören
- Event beitreten (alle Events werden mit Namen und benutzer aufgelistet)
- Event verlassen
- Event starten
- Event beenden
- Event vorbereiten
- Eventvorbereitung beenden
- Eventvorbereitung überspringen
- Spieler einladen
- Letzte Eventergebnisse einsehen
- Liste der Member eines Events einsehen
- Liste der Member, welche noch nicht beim Treffpunkt sind, einsehen
- Spielstatus einsehen
- Sprache ändern
[tab='TODO']
- Traitorshop
- NPC AI System
- Singleplayer / Multiplayer Missions
- Actorsystem
- neue Eventtypes
- Maps autoloader (einfaches importieren von PAWN Maps)
- Bugfixes
[tab='Startbedingungen','']
Falls die Bedingungen für ein Event nicht erfüllt sind (durch die Einstellungen), kann das Event nicht gestartet werden. Zudem werden immer min. 2 Spieler benötigt, eine höhere Spielerzahl ist vom Event abhängig.
[tab='Updates','']
Update 0.4e R1:
- changed Key to open Dialogs and Gates from [ Y ] to [ H ]
- added a lot of new maps
- added EventMapDescription to easily describe a map
- improved EventMap / map handling with a global map loader, now you can easily add new maps
- fixed some maps with improved extern map converter
- added Gates from virtuality-roleplay project + improved it
- fixed eventId counter (calculated with value of events) to autoincrement with local eventIndex Integer
- improved + fixed Dialoges
- added map informations / details (because of the credits)
- changed auto respawn system on leaving the map
- added destroy() to EventMap for special handling, e.g. creating Gates on a map
Update 0.4e:
- improved event handling (eg. instead of remove(Player) and leave(Player) -> onPlayerExit(Player)
- fixed Textdraws
- increased range of radius functions
- minor performance improvement
- added GPS and RangeLabel
- fixed getWinner for Catching and TTT
- improved map handling and added a parent map class to easy handle maps
- fixed TTTDeadBody
- added save datas for players before event start and reset datas at end of event / onPlayerExit / on destroy
- added TTTShop
- added globalTimer and onGlobalTimer
- added command to test maps ('/eventsdb', ...)
- added maps
Update 0.4c R6:
- some performance improvement
- removed random color reset in Catching event and added global reset color on EventBase
- added global EventTextdraw handling for better programming
- added onPlayerPause, but currently not used and needs to be programmed and to undo / resend packets because of packetloss
- added score timer to linear increase event score or check if event score need to increase
- global stats added (eventScore)
- added timer to sort the EventTextdraws (1. eventScore, 2. playername)
- optimized the multiplicator (hunter only deals half damage for vehicle)
- minor improvement because of color defines
- fixed colors in event to hide players
- removed mapTextdraw and added GangZone to give the map a better look and to use PickUps and Checkpoints / GPS
- global timer added
- fixed gametimer
- added updateTextdraws to better update Textdraws for specific player after remove or ordered with eventTextdraw.move(int)
- some minor bugfixes and checks
Update 0.4c R5:
- added some Gametextes for better gameplay
- fixed Textdraw
- added NoTeamDamage
- added global min player Amount
- added preparation countdown
- fixed timers
- fixed TTTDeadBoy with Worlds and Interiors
- fixed distance check and get dropWeapon
- added global DropGun pickup
- added more get DropWeapon with move above
Update 0.4c R4:
- minor bugfixes
- added some test commands
- event maps new enviroment
- added weapondata to deadBodys
- added DropWeapons
- added global gametimer
- added deadBodyDialog
- added mapfixes
Update 0.4c R3:
- fixed dialog and map enviroment
- fixed Textdraws
- other minor bugfixes
- added some test commands
- added available maps which can select in an event which does not depends on maps
...
[tab='Credits','']
- 123marvin123: Weiterentwicklung des Shoebill Plugins und Support
- FCNPC Plugin: Unterstützung mit der Arbeit mit NPCs (jedoch noch nicht so gut ausgebaut)
- Streamer Plugin und Wrapper (123marvin123's Wrapper) -> Maps Support
- MapAndreas (FCNPC Plugin)
- Fynn630: Video!
- alle anderen kleineren Funktionen und Maps, Credits sind in dem Script und beim Aufruf von Events, z.B.
- DropWeapon ObjektIDs (PeteShag (http://forum.sa-mp.com/showthread.php?t=217076))
- Jeffry: DeadBody ObjektIDs
- Alf21: Dieses Eventsystem
[/tabmenu]
Ich freue mich über jedes Feedback!