Lieber Besucher, herzlich willkommen bei: RPG Studio - Make your World real. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Kagu-chan

Alopex Lagopus

Motto: Ich Böse, Du Teufel

  • Nachricht senden

41

Donnerstag, 8. Januar 2015, 00:47

Scintilla wird auch in obigem Beispiel genutzt, braucht aber ziemlich lang zum initialisieren bzw ist gerade bei Ruby etwas begrenzt. Obiges Farbschema ist eine Mischung aus notepad++ und dem Studio-Internen Highlighting.

Begonnen noch nicht, aber es sollte nicht allzu viel Arbeit sein.
Bild

  • Hallo

    Tabs klicken unso, ne?
  • Lyric

    Meine schwarze Liste, beginnt mit einem Satz:
    "Wer zuletzt lacht, lacht am besten!", und am Ende ist noch Platz.
    Auf der Liste meiner Feinde, ist auch für euch noch Platz
    Wer zuletzt lacht, lacht am besten!
    Merkt euch diesen Satz!

    Ode an die Feindschaft von Saltatio Mortis

  • Outtakes

    • Nummer 3
      20.09.2012 - 19:46
      "Yah, ich bin ihre Motivazin." "Motivazin - gibts das jetzt in der Apotheke rezeptflichtig?"
    • Ich mag Kekse
    • Nummer 2
      08.09.2012 - 01:29 Uhr
      "Die Erlebnismacher zu Hannovre - Exlibre - ääääh... Excalibur"

      *Lachflash*
    • Nummer 1
      07.09.2012 - 22:58 Uhr
      *Bööarps* - Die Erlebnismacher zu Hannovre - Excalibur... "Mahlzeit... also... doch nicht Mahlzeit... war nur die Website"
      "Ich hab gerülpst -.-" "Du hast was?" *LACHFLASH*
      "Nicht dein Ernst, oder?" "DOCH!" *LACHFLASH second tour*
  • Profile

    Bild
  • Ich

    Dass bin ich:

    Maker: RPG-XP, RPG-VX
    Story:
    Für andere mehr als für mich: 60%

    Grafik:
    Ich werde besser: 35%

    Pixeln:
    Ich stehe an den Anfängen: 7%

    Mapping:
    Es fehlen nur noch (alle) Feinheiten: 67%

    Scripting:
    Informatiker, mittlerweile auch andere Sachen am skripten: 93%
  • Neues aus der SB

    Neues aus der SB:

    Spoiler: Die Camper
    (03:41:36) Kagurame: n8 du
    (03:41:37) Irrlicht: Nacht Mozilla
    (03:41:47) MozillaBabybird: Kagu: der witz war flach
    (03:42:01) Kagurame: welcher witz?
    (03:42:14) Heatra: geh nicht benji
    (03:42:21) Heatra: spiel lieber ats2 :D
    (03:42:25) MozillaBabybird: nacht leute ^^ ijemand sollte diesen verlauf im studio bash posten, damit die mal wissen wer die echten camper hier sind :D
    (03:42:35) Kagurame: ich bin scripten
    (03:42:38) MozillaBabybird: Heat: tut mir sorry xD
    (03:42:40) Kagurame: ich mach das...^^
    (03:42:48) MozillaBabybird: bis .... mittag ?
    (03:42:49) Heatra: ^^
    (03:42:55) MozillaBabybird: ja mittag dürfte passen
    (03:42:56) MozillaBabybird: :D
    (03:42:57) Kagurame: ^^
    (03:43:02) Heatra: ich steh morgen eh erst um 5 uhr mittags auf
    (03:43:07) Kagurame: bis heute
    (03:43:11) Steve: MozillaBabybird verlässt den Chat.
    (03:43:15) Kagurame: ich so um 3
    zum Lesen den Text mit der Maus markieren


    Spoiler: Die Informatiker vom Dienst
    (03:05:32) Ankou: bist du dir SICHER, dass es die Performance an der Stelle kritisch ist und c.a. 30% sind KEIN großer Unterschied?
    (03:05:41) Ankou: oh
    (03:05:45) Ankou: okay
    (03:06:21) Asandril: Oh Ha was habt Ihr gerade für ein Thema?
    (03:06:41) Ankou: das ist in der Tat eine performancekritische angelegenheit, aber ich denke dennoch nicht, dass das die Dinge sind auf die du dein Hauptaugenmerk richten solltest.
    (03:07:01) Heatra: maschine
    (03:07:01) Ankou: derartige Mikrooptimierungen werden Performanceprobleme sogut wie niemals beseitigen können
    (03:07:01) Irrlicht: anhand der Tatsache dass es 20 000 000 Durchläufe waren nicht wirklich :-/
    (03:07:08) Ankou: änder was konzeptionelles oder lass es bleiben.
    (03:07:31) Ankou: evtl. kannst du mehr der Interpretation nach vorne verlagern
    (03:08:06) Ankou: aber solche Dinge zu versuchen wie die case Abfragen durch send zu ersetzen in der Hoffnung ein paar Prozent einzusparen bringens dir nicht
    (03:08:26) Asandril: Bin ich gerade hier in einem Kurs gelandet ..
    (03:08:36) Irrlicht: hatte mal in Erwägung gezogen die Befehle evtl. schonmal etwas "vorzuinterpretieren", aber das dürfte dann mehr Speicher verbrauchen als es Geschwindigkeit bringt...
    (03:09:11) Ankou: Asandril: ja, erstaunlich, angetrunken an Silvester über so etwas zu reden
    (03:09:28) Heatra: -> lampenfieber
    (03:09:40) Asandril: Kann ich nur beipflichten.
    (03:09:46) Irrlicht: atm bin ich mir nicht sicher was genau den doch vergleichsweise erheblichen Lag von Parallel-Process-Events verursacht (oder ob es einfach an der gesammten Masse liegt) wenn ich bei 2 000 000 solcher Durchläufe unter einer Sek. bleibe...
    (03:09:57) Ankou: Irrlicht: das ist durchaus üblich. Speicher gegen Geschwindigkeit einzustauschen ist sehr populär und bringt oft viel
    (03:11:23) Irrlicht: mal schaun :)
    zum Lesen den Text mit der Maus markieren


    Spoiler: Auch noch später^^
    (03:32:35) (Kagurame_AnkündigungImForumMach): es da ne methode wie beim xp?
    (03:32:48) Irrlicht: Cache.system("Iconset")
    bekommst das Iconset
    (03:32:50) (Kagurame_AnkündigungImForumMach): brauche es dringend, aber nix gefunden bisher
    (03:33:01) (Kagurame_AnkündigungImForumMach): und dann per id?
    (03:33:06) (Kagurame_AnkündigungImForumMach): drauf zugreifen?
    (03:33:07) Irrlicht: Index berechnet sich einfach aus
    x = index % 16
    y = index / 16
    (03:33:17) Irrlicht: afaik warens 16 nebeneinander^^
    (03:33:28) (Kagurame_AnkündigungImForumMach): ok, danke.
    (03:33:51) (Kagurame_AnkündigungImForumMach): ich glaub ich scripte dann noch ein bissl
    (03:34:01) Steve: (Kagurame_AnkündigungImForumMach​) heißt jetzt Kagurame.
    (03:34:04) Irrlicht: im XP hast die einzelnen Icons anhand des Namens aus dem Icon-Ordner aufgerufen
    (03:34:09) Steve: Kagurame ist nun Scripten!
    (03:34:17) Irrlicht: (geht natürlich im VX auch, aber wozu gibts das Iconset)
    (03:34:23) Kagurame: ja ich weis, daher war ich heut mittag verwirrt
    zum Lesen den Text mit der Maus markieren

Reborn

hat beim Stromkonzern schon Rabatt

Motto: Wer noch was vom Wochenende weis, hat es nie erlebt!

  • Nachricht senden

42

Freitag, 9. Januar 2015, 02:00

Ich hab mal bei mir ein paar alte Scripte ausgegraben, welche (fast) zu 100% von mir sind und mit welchen gemacht werden darf, was er oder sie will.
Ein altes Screenshot-Script von mir, welches Bitmap-Daten direkt im Speicher kopiert:
Spoiler: Screenshot

Ruby Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
########################
# ScreenCapture V1.0
# Autor Reborn
########################
 
class Bitmap
  CreateFile = Win32API.new('Kernel32.dll', 'CreateFile', 'piipiii', 'i')
  WriteFile = Win32API.new('Kernel32.dll', 'WriteFile', 'ipipp', 'i')
  CloseHandle = Win32API.new('Kernel32.dll', 'CloseHandle', 'i', 'i')
  RtlMoveMemory = Win32API.new('Kernel32.dll', 'RtlMoveMemory', 'pii', 'i')
 
  GENERIC_WRITE = 0x40000000
  OPEN_ALWAYS = 0x04
 
  def save(filename)
    towrite = ""
    hfBitmap = ["B"[0], "M"[0], width * height * 4, 0, 0, 14].pack('CCLSSL')
    infobmp  = [40, width, height, 1, 32, 0, 0, 0, 0, 0, 0, 0].pack('LLLSSLLLLLL')
    file = CreateFile.call(filename, GENERIC_WRITE, 0, 0, OPEN_ALWAYS, 0, 0)
    buff = "\0\0\0\0"
    WriteFile.call(file, hfBitmap + infobmp, hfBitmap.size() + infobmp.size(), buff, 0)
    WriteFile.call(file, address, width * height * 4, buff, 0)
    CloseHandle.call(file)
  end
 
  # Method "address": Quelle Rpg-Studio-Wiki
  def address
    buffer = "xxxx"
    ad     = self.object_id * 2 + 16
    RtlMoveMemory.call(buffer, ad, 4); ad = buffer.unpack("L")[0] +  8
    RtlMoveMemory.call(buffer, ad, 4); ad = buffer.unpack("L")[0] + 16
    RtlMoveMemory.call(buffer, ad, 4); return buffer.unpack("L")[0]
  end
end
 
module Screen
  GetForegroundWindow = Win32API.new('User32.dll', 'GetForegroundWindow', '', 'i')
  GetPrivateProfileString = Win32API.new('Kernel32.dll', 'GetPrivateProfileString', 'ppppip', 'i')
  GetWindowDC = Win32API.new('User32.dll', 'GetWindowDC', 'i', 'i')
  ReleaseDC = Win32API.new('User32.dll', 'ReleaseDC', 'ii', 'i')
  CreateCompatibleBitmap = Win32API.new('Gdi32.dll', 'CreateCompatibleBitmap', 'iii', 'i')
  CreateCompatibleDC = Win32API.new('Gdi32.dll', 'CreateCompatibleDC', 'i', 'i')
  SelectObject = Win32API.new('Gdi32.dll', 'SelectObject', 'ii', 'i')
  BitBlt = Win32API.new('Gdi32.dll', 'BitBlt', 'iiiiiiiii', 'i')
  GetDIBits = Win32API.new('Gdi32.dll', 'GetDIBits', 'iiiippi', 'i')
  DeleteObject = Win32API.new('Gdi32.dll', 'DeleteObject', 'i', 'i')
  DeleteDC = Win32API.new('Gdi32.dll', 'DeleteDC', 'i', 'i')
  GetClientRect = Win32API.new('User32.dll', 'GetClientRect', 'ip', 'i')
  GetWindowRect = Win32API.new('User32.dll', 'GetWindowRect', 'ip', 'i')
 
  SRCCOPY        = 0xCC0020
  DIB_RGB_COLORS = 0x000000
 
  module_function
 
  def Shot(x=nil, y=nil, width=nil, height=nil)
    rect1 = Rect.new(0, 0, 1, 1)
    rect2 = getWindowRect()
    if x.nil? || y.nil? || width.nil? || height.nil?
      rect1 = getClientRect()
    else
      rect1 = Rect.new(x, y, width, height)
    end
    rect1.x   += (rect2.width - rect1.width) / 2
    rect1.y   += (rect2.height - rect1.height) - rect1.x
    bitmap    = Bitmap.new(rect1.width, rect1.height)
    infobmp   = [40, rect1.width, rect1.height, 1, 32, 0, 0, 0, 0, 0, 0, 0].pack('LLLSSLLLLLL')
    hdcScreen = GetWindowDC.call(hwnd())
    hbmScreen = CreateCompatibleBitmap.call(hdcScreen, rect1.width, rect1.height)
    hdcTemp   = CreateCompatibleDC.call(hdcScreen)
    hbmOld    = SelectObject.call(hdcTemp, hbmScreen)
    BitBlt.call(hdcTemp, 0, 0, rect1.width, rect1.height, hdcScreen, rect1.x, rect1.y, SRCCOPY);
    GetDIBits.call(hdcTemp, hbmScreen, 0, rect1.height, bitmap.address, infobmp, DIB_RGB_COLORS)
    SelectObject.call(hdcTemp, hbmOld);
    DeleteObject.call(hbmScreen);
    DeleteDC.call(hdcTemp);
    ReleaseDC.call(hwnd, hdcScreen)
    return bitmap
  end
 
  def getWindowRect()
    buff = "\0" * 16
    GetWindowRect.call(hwnd, buff)
    buff = buff.unpack('llll')
    return Rect.new(0, 0, buff[2] - buff[0], buff[3] - buff[1])
  end
 
  def getClientRect()
    buff = "\0" * 16
    GetClientRect.call(hwnd, buff)
    buff = buff.unpack('llll')
    return Rect.new(buff[0], buff[1], buff[2], buff[3])
  end
 
 
  def hwnd()
    return GetForegroundWindow.call()
  end
end
zum Lesen den Text mit der Maus markieren

Und noch ein Script von mir, mit welchem man Alt+Enter disabeln kann (nur für RPG-Maker Version 1.02a):
Spoiler: DisableAlt+Enter

Ruby Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
module Disable 
  PAGE_READWRITE = 0x04 
  MoveMemory = Win32API.new('Kernel32.dll', 'RtlMoveMemory', 'ppl', 'v') 
  VirtualProtect = Win32API.new('Kernel32.dll', 'VirtualProtect', 'pllp', 'l') 
  def self.AltEnter(disable=true) 
    if (disable) 
      patchAltEnter() 
    else 
      unpatchAltEnter() 
    end 
  end 
  def self.F1(disable=true) 
    if (disable) 
      patchF1() 
    else 
      unpatchF1() 
    end 
  end 
  def self.patchAltEnter() 
    # 1 retn and 4 NOPs 
    charArr = [0xC3, 0x90, 0x90, 0x90, 0x90].pack('C5') 
    # address before full screen call 
    address = 0x1008C975 
    oldProtection = "xxxx" 
    VirtualProtect.call(address, 1024, PAGE_READWRITE, oldProtection) 
    # place a retn-command before full screen call 
    MoveMemory.call(address, charArr, 5) 
    VirtualProtect.call(address, 1024, 64, "xxxx") 
  end 
  def self.unpatchAltEnter() 
    # the orginal assemblies 
    charArr = [0x66, 0xC7, 0x44, 0x24, 0x3C].pack('C5') 
    # address from full screen call 
    address = 0x1008C975 
    oldProtection = "xxxx" 
    VirtualProtect.call(address, 1024, PAGE_READWRITE, oldProtection) 
    MoveMemory.call(address, charArr, 5) 
    VirtualProtect.call(address, 1024, 64, "xxxx") 
  end 
  def self.patchF1() 
    # 6 NOPs 
    charArr = [0x90, 0x90, 0x90, 0x90, 0x90, 0x90].pack('C6') 
    # address from F1 call 
    address = 0x10003A36 
    oldProtection = "xxxx" 
    VirtualProtect.call(address, 1024, PAGE_READWRITE, oldProtection) 
    MoveMemory.call(address, charArr, 6) 
    VirtualProtect.call(address, 1024, 64, "xxxx") 
  end 
  def self.unpatchF1() 
    # the orginal assemblies 
    charArr = [0xFF, 0x15, 0x18, 0x00, 0x0E, 0x10].pack('C6') 
    # address from F1 call 
    address = 0x10003A36 
    oldProtection = "xxxx" 
    VirtualProtect.call(address, 1024, PAGE_READWRITE, oldProtection) 
    MoveMemory.call(address, charArr, 6) 
    VirtualProtect.call(address, 1024, 64, "xxxx") 
  end 
end
zum Lesen den Text mit der Maus markieren
Mehr als a Allgäuer ka a Mensch it wera.


Wie soll ich wissen was ich denke, bevor ich nicht höre was ich sage?


Spoiler: OpenSource-Projects
NES-Emulator - a simple NES-Emulator
ERDL - a embedded Ruby Interpreter with the abilltiy to render images with DirectX ERDL shall be 100% compatible to RPGXP-Ruby Scripts
zum Lesen den Text mit der Maus markieren

43

Freitag, 9. Januar 2015, 19:43

Deine Lösung für Disable Alt+Enter finde ich immernoch sehr cool.


Bisher sieht die Liste der Verbesserungsvorschläge der GUI ja noch etwas kurz aus, deswegen stelle ich hier mal zwei zur Diskussion:
  1. Bei Programmstart ein zufälliger Tipp der sich entweder um Ruby, RGSS, die Arbeit mit Skripten oder EventSkripts dreht. Der könnte zum Beispiel aus einer erweiterbaren XML Datei kommen.
  2. Die Möglichkeit zu archivierten Skripten, selber Notizen anzufügen (entweder durch ein Notiz-Textfeld was in die GUI Integriert ist und immer die Notizen zum aktuell ausgewählten Skript anzeigt, oder in einem extra Fenster, dass man zu jedem Skript öffnen kann

Kagu-chan

Alopex Lagopus

Motto: Ich Böse, Du Teufel

  • Nachricht senden

44

Samstag, 10. Januar 2015, 20:59

Joa xD

Wie soll man Skripte sortieren können?
Ich wäre ja für ein Tag-System. So das man bspw. Tags vergibt wie "Menu" und "RGSS1", am Ende einfach nach Tags filtert. Wäre denk ich das dynamischste, oder?
Bild

  • Hallo

    Tabs klicken unso, ne?
  • Lyric

    Meine schwarze Liste, beginnt mit einem Satz:
    "Wer zuletzt lacht, lacht am besten!", und am Ende ist noch Platz.
    Auf der Liste meiner Feinde, ist auch für euch noch Platz
    Wer zuletzt lacht, lacht am besten!
    Merkt euch diesen Satz!

    Ode an die Feindschaft von Saltatio Mortis

  • Outtakes

    • Nummer 3
      20.09.2012 - 19:46
      "Yah, ich bin ihre Motivazin." "Motivazin - gibts das jetzt in der Apotheke rezeptflichtig?"
    • Ich mag Kekse
    • Nummer 2
      08.09.2012 - 01:29 Uhr
      "Die Erlebnismacher zu Hannovre - Exlibre - ääääh... Excalibur"

      *Lachflash*
    • Nummer 1
      07.09.2012 - 22:58 Uhr
      *Bööarps* - Die Erlebnismacher zu Hannovre - Excalibur... "Mahlzeit... also... doch nicht Mahlzeit... war nur die Website"
      "Ich hab gerülpst -.-" "Du hast was?" *LACHFLASH*
      "Nicht dein Ernst, oder?" "DOCH!" *LACHFLASH second tour*
  • Profile

    Bild
  • Ich

    Dass bin ich:

    Maker: RPG-XP, RPG-VX
    Story:
    Für andere mehr als für mich: 60%

    Grafik:
    Ich werde besser: 35%

    Pixeln:
    Ich stehe an den Anfängen: 7%

    Mapping:
    Es fehlen nur noch (alle) Feinheiten: 67%

    Scripting:
    Informatiker, mittlerweile auch andere Sachen am skripten: 93%
  • Neues aus der SB

    Neues aus der SB:

    Spoiler: Die Camper
    (03:41:36) Kagurame: n8 du
    (03:41:37) Irrlicht: Nacht Mozilla
    (03:41:47) MozillaBabybird: Kagu: der witz war flach
    (03:42:01) Kagurame: welcher witz?
    (03:42:14) Heatra: geh nicht benji
    (03:42:21) Heatra: spiel lieber ats2 :D
    (03:42:25) MozillaBabybird: nacht leute ^^ ijemand sollte diesen verlauf im studio bash posten, damit die mal wissen wer die echten camper hier sind :D
    (03:42:35) Kagurame: ich bin scripten
    (03:42:38) MozillaBabybird: Heat: tut mir sorry xD
    (03:42:40) Kagurame: ich mach das...^^
    (03:42:48) MozillaBabybird: bis .... mittag ?
    (03:42:49) Heatra: ^^
    (03:42:55) MozillaBabybird: ja mittag dürfte passen
    (03:42:56) MozillaBabybird: :D
    (03:42:57) Kagurame: ^^
    (03:43:02) Heatra: ich steh morgen eh erst um 5 uhr mittags auf
    (03:43:07) Kagurame: bis heute
    (03:43:11) Steve: MozillaBabybird verlässt den Chat.
    (03:43:15) Kagurame: ich so um 3
    zum Lesen den Text mit der Maus markieren


    Spoiler: Die Informatiker vom Dienst
    (03:05:32) Ankou: bist du dir SICHER, dass es die Performance an der Stelle kritisch ist und c.a. 30% sind KEIN großer Unterschied?
    (03:05:41) Ankou: oh
    (03:05:45) Ankou: okay
    (03:06:21) Asandril: Oh Ha was habt Ihr gerade für ein Thema?
    (03:06:41) Ankou: das ist in der Tat eine performancekritische angelegenheit, aber ich denke dennoch nicht, dass das die Dinge sind auf die du dein Hauptaugenmerk richten solltest.
    (03:07:01) Heatra: maschine
    (03:07:01) Ankou: derartige Mikrooptimierungen werden Performanceprobleme sogut wie niemals beseitigen können
    (03:07:01) Irrlicht: anhand der Tatsache dass es 20 000 000 Durchläufe waren nicht wirklich :-/
    (03:07:08) Ankou: änder was konzeptionelles oder lass es bleiben.
    (03:07:31) Ankou: evtl. kannst du mehr der Interpretation nach vorne verlagern
    (03:08:06) Ankou: aber solche Dinge zu versuchen wie die case Abfragen durch send zu ersetzen in der Hoffnung ein paar Prozent einzusparen bringens dir nicht
    (03:08:26) Asandril: Bin ich gerade hier in einem Kurs gelandet ..
    (03:08:36) Irrlicht: hatte mal in Erwägung gezogen die Befehle evtl. schonmal etwas "vorzuinterpretieren", aber das dürfte dann mehr Speicher verbrauchen als es Geschwindigkeit bringt...
    (03:09:11) Ankou: Asandril: ja, erstaunlich, angetrunken an Silvester über so etwas zu reden
    (03:09:28) Heatra: -> lampenfieber
    (03:09:40) Asandril: Kann ich nur beipflichten.
    (03:09:46) Irrlicht: atm bin ich mir nicht sicher was genau den doch vergleichsweise erheblichen Lag von Parallel-Process-Events verursacht (oder ob es einfach an der gesammten Masse liegt) wenn ich bei 2 000 000 solcher Durchläufe unter einer Sek. bleibe...
    (03:09:57) Ankou: Irrlicht: das ist durchaus üblich. Speicher gegen Geschwindigkeit einzustauschen ist sehr populär und bringt oft viel
    (03:11:23) Irrlicht: mal schaun :)
    zum Lesen den Text mit der Maus markieren


    Spoiler: Auch noch später^^
    (03:32:35) (Kagurame_AnkündigungImForumMach): es da ne methode wie beim xp?
    (03:32:48) Irrlicht: Cache.system("Iconset")
    bekommst das Iconset
    (03:32:50) (Kagurame_AnkündigungImForumMach): brauche es dringend, aber nix gefunden bisher
    (03:33:01) (Kagurame_AnkündigungImForumMach): und dann per id?
    (03:33:06) (Kagurame_AnkündigungImForumMach): drauf zugreifen?
    (03:33:07) Irrlicht: Index berechnet sich einfach aus
    x = index % 16
    y = index / 16
    (03:33:17) Irrlicht: afaik warens 16 nebeneinander^^
    (03:33:28) (Kagurame_AnkündigungImForumMach): ok, danke.
    (03:33:51) (Kagurame_AnkündigungImForumMach): ich glaub ich scripte dann noch ein bissl
    (03:34:01) Steve: (Kagurame_AnkündigungImForumMach​) heißt jetzt Kagurame.
    (03:34:04) Irrlicht: im XP hast die einzelnen Icons anhand des Namens aus dem Icon-Ordner aufgerufen
    (03:34:09) Steve: Kagurame ist nun Scripten!
    (03:34:17) Irrlicht: (geht natürlich im VX auch, aber wozu gibts das Iconset)
    (03:34:23) Kagurame: ja ich weis, daher war ich heut mittag verwirrt
    zum Lesen den Text mit der Maus markieren

45

Samstag, 31. Januar 2015, 15:01

Gibt's schon was Neues zum Animations-Entruckler Skript? Versuche die ganze Zeit schon was zu kreieren aber krieg es nicht hin..

Könnte dasselbe auch mit Characters funktioneren?

46

Samstag, 31. Januar 2015, 23:21

Was genau ist denn dein Problem? Zum Ursprünglichen, aus dem Skript Explorer hatte ich ja schon was geschrieben: Animations-Entruckler Skript Rewrite
Das hatte sich aber damit beschäftigt, das wenn viele Animationen gleichzeitig zum ersten Mal abgespielt werden es etwas ruckeln kann. Ist das dein Problem?

47

Samstag, 31. Januar 2015, 23:37

Was genau ist denn dein Problem? Zum Ursprünglichen, aus dem Skript Explorer hatte ich ja schon was geschrieben: Animations-Entruckler Skript Rewrite
Das hatte sich aber damit beschäftigt, das wenn viele Animationen gleichzeitig zum ersten Mal abgespielt werden es etwas ruckeln kann. Ist das dein Problem?
Nunja, Monstas Skript-Entruckler funktioniert nicht so recht und ich musste paar Variablen abändern; das Skript funktionierte dann, Animationen wurden dann aber entweder falsch oder garnicht angezeigt.

Trotzdem habe ich damit herumexperimentiert und die Framerate gemessen; dabei ist mir aufgefallen, dass sobald Animationen gezeigt werden es zu Framedrops kommt. Mit dem Entruckler wurde das aber quasi behoben, jedoch halt leider mit Fehlern.

Was mich interessieren würde: was wäre die beste Methode Animationen/Charaktere/Panoramas/etc. dauerhaft im Cache zu speichern? Denn ich habe genau das Problem, was du angesprochen hast; dass es zu slowdowns kommen kann wenn viele gleichzeitig abgespielt werden.

48

Samstag, 31. Januar 2015, 23:45

Der Cache tut genau das - er speichert die Bitmaps dauerhaft, lädt sie also alle nur einmal. Deswegen war Monstas Entruckler ja so sinnlos. Ich habe das einzige daraus entnommen, was vielleicht sinn machen könnte und zwar die ganzen Animationen bei Spielstart, statt wenn sie das erste Mal gebraucht werden, zu cachen.

Dein Problem kann also so nicht zutreffen. Wieso Monstas Skript bei dir Fehler verursacht hat kann ich gerade nicht sagen, es seiden Du benutzt nicht den RPG Maker XP - was hast Du denn geändert?

49

Sonntag, 1. Februar 2015, 02:11

Das würde mich interessieren; alle Animationen bei Spielstart laden, das wär doch möglich oder?

Hab mal ein neues Projekt gestartet und da funktionierte das Monsta Skript; liegt also irgendwie an meinem Projekt. Ich hab aber auch keine Lust das zu fixen wenn es simpler geht als das Monsta Skript :D

50

Sonntag, 1. Februar 2015, 02:27

Ja, das ist möglich. Ich habe dazu ein Skript geschrieben und hier im Thread gezeigt. Habe ich doch vor vier Beiträgen verlinkt. :-P
Ich möchte es bald in seiner finalen Form zusammen mit der Skriptsammlung für den neuen SkriptExplorer veröffentlichen und anschließend darf es dann auch entsprechend der Nutzungsbestimmungen der Skriptsammlung verwendet werden. Einfach noch etwas gedulden. ;)

51

Sonntag, 1. Februar 2015, 02:34

Spitze! :hi: Ich freu mich drauf :D

Ähnliche Themen

Social Bookmarks