HX3 Foren

HX3 Foren (https://hx3.de/)
-   Community (https://hx3.de/community-173/)
-   -   A3, new scripting technology (https://hx3.de/community-173/a3-new-scripting-technology-21204/)

Xeno 16.12.2011 09:46

A3, new scripting technology
 
Für diejenigen die es noch nicht wissen, BIS wird die Scripting Engine erweitern mit Java.
Siehe: Take On Java - Bohemia Interactive Forums

Eine erste Version sollte schon in dem kommenden Take On Helicopters Patch 1.03 aufschlagen (dort wird es getestet) hat es aber nicht mehr geschafft.

Zitat:

- the engine should be be able to run code written in any programming language that can compiled for Java Virtual Machine but we did not experiment with it so far ( quite few, Logo anyone )
for now, bridge to all existing scripting commands is present
- it is possible create new scripting commands to take full advantage of JVM (performance, nicer interface)
- Arma 3 is going to build upon this technology, so if you can, Take On Java now and help us to shape it up
Xeno

Reno 16.12.2011 09:59

Xeno, kannst du dir vorstellen, dass das Vorteile bringt?

Oder eine neue Baustelle dazu?

burns 16.12.2011 10:24

Minecraft meets ArmA :zahn:

MCPXXL 16.12.2011 11:03

.
 
Tolle News, auch wenn ich wohl nie ein Coder werden sollte :-(

Hoffentlich wird es nicht was sql etc angeht zu sehr eingeschränkt.
Alles über directx hacks machen zu müssen, ist zwar toll aber wieder ein
Flaschenhals mehr.

Mich überrascht BIS, nach den ganzen Jahren immer wieder. :daumen:

Lester 16.12.2011 11:21

Ich hoffe Xeno meinte das mit der extremen Veränderung bezüglich Modding, das Thema neue Scripting-Engine hab ich im BIF auch schon etwas verfolgt,
aber das es Java wird war mir noch neu. ;)

Wie das mit neuen Scriptbefehlen funktionieren soll ist mir allerdings etwas schleierhaft, derzeit viele mir dazu eine ähnliche Anwendung ein wie bis Dato mittels Funktionen.

Hoffentlich kann man das auch für eine gescheite Schnittstelle in und aus ArmA3 nutzen, denn dann stehen wirklich enorme Möglichkeiten offen ! :daumen:

flickflack 16.12.2011 13:14

Wenn sie schon Java nutzen *würg* und nicht .Net(/Mono), sollte man gleich mal vorschlagen, sich von den D3D-Renderpfaden zu lösen und OGL einzusetzen, dann klappts auch mit Arma³ für den Pinguin :)

...hät's LUA nicht auch getan?!

Lester 16.12.2011 13:28

Zitat:

Zitat von flickflack (Beitrag 398479)
Pinguin :)
...hät's LUA nicht auch getan?!

Wer braucht schon son Federvieh ohne Flügel. :angel:

Was die Leute alle nur mit Lua haben ?
Java ist da doch wesendlich weiter verbreitet und ganz nebenbei auch noch für andere Dinge zu gebrauchen. :daumen:

Xeno 16.12.2011 13:40

Zitat:

Zitat von flickflack (Beitrag 398479)
Wenn sie schon Java nutzen *würg* und nicht .Net(/Mono)

Mono wäre auch mein Wunsch gewesen (als Mono Contributor :p) und det wird in vielen Spielen mittlerweile ja nu auch genutzt. Aber wer weiß, eventuell wird es auch dafür noch Unterstützung in Zukunft geben ;)

Java fällt mir ad hoc kein Titel ein der das als Scripting Engine benutzt (rede jetzt nicht von sowas wie Minecraft was komplett in Java geschrieben ist).

Zitat:

Zitat von Lester (Beitrag 398471)
Ich hoffe Xeno meinte das mit der extremen Veränderung bezüglich Modding, das Thema neue Scripting-Engine hab ich im BIF auch schon etwas verfolgt,
aber das es Java wird war mir noch neu. ;)

Das meinte ich damit :)
Java kennen ein paar Leute mehr als sqf, mal abgesehen davon das Java wesentlich schneller in der ArmA Engine laufen wird als sqf.

Zitat:

Zitat von Lester (Beitrag 398471)
Wie das mit neuen Scriptbefehlen funktionieren soll ist mir allerdings etwas schleierhaft, derzeit viele mir dazu eine ähnliche Anwendung ein wie bis Dato mittels Funktionen.

Momentan gibt es eine Bridge. Denke über kurz oder lang wird diese Bridge mit den Scripting Befehlen verschwinden und alles in Klassen aufgehen (wäre zumindest wünschenswert). So in der Art "class Group" mit Methoden und Feldern die für diese Klasse interessant sind z.B.

Zitat:

Zitat von Lester (Beitrag 398471)
Hoffentlich kann man das auch für eine gescheite Schnittstelle in und aus ArmA3 nutzen, denn dann stehen wirklich enorme Möglichkeiten offen ! :daumen:

^this

Xeno

flickflack 16.12.2011 13:45

Zitat:

Zitat von Xeno (Beitrag 398481)
Mono wäre auch mein Wunsch gewesen (als Mono Contributor :p) und det wird in vielen Spielen mittlerweile ja nu auch genutzt. Aber wer weiß, eventuell wird es auch dafür noch Unterstützung in Zukunft geben ;)

Joar so wie Unity bspw., wo du mit C# gegenharken kannst...

Das heißt ich brauch für Arma³ jetzt ne installlierte JVM auf meiner Box? Das riecht doch :)

Atomic 03.01.2012 10:33

Wer Lust hat sich in Java einzuarbeiten dem hilft möglicherweise folgender Link:
Arbeitsgruppe Autonome Intelligente Systeme - Lehre - WS11/12 - Informatik I
Dort gibt es unter "Vorlesungsaufzeichnungen" auch die gesamten Lesungen als Aufzeichnung.
Ich empfehle außerdem: Eclipse ( http://www.eclipse.org/downloads/pac...pers/indigosr1 )

Es ist nicht so schwer wie man denkt. Aber man muss etwas Zeit investieren.

Snevsied 03.01.2012 11:07

Viel wichtigerer wäre es, dass sie Java wirklich komplett unterstützen und nicht, dass es dann ein kastriertes etwas kommt, wo man nur die Strings und Integer ausgeben kann*.


*sehr vereinfacht ausgedrückt

flickflack 03.01.2012 13:14

Ich kann mir vorstellen, dass "lediglich" Sprach-Bindungen hergestellt werden. Bin auf die Architektur gespannt. Gibt's da schon Details, die ich vllt überlesen/ignoriert habe?! Nen Python-Binding hät's ja vllt auch getan, oder eben LUA. Die Sprach-Features von Java können da nicht der überzeugendste Punkt gewesen sein...so iwi. Und das Lizensierungshickhack sicher auch nicht. Und da sie schon die Boost-Libs nutzen frage ich mich wirklich nach dem Grund, für diese Entscheidung.

"Delegates/Function Pointers over Observers" sag ich ja immer :)

Xeno 03.01.2012 13:31

So sieht das z.B. aus:

Code:

package mypackage;

import com.bistudio.JNIScripting.RVEngine;

public class MyClass {
    public static Object outputHelloWorld(Object[] args) {
        RVEngine.hint("Hello world");
        return null;
    }
}

Xeno

flickflack 03.01.2012 13:37

K, Binding/Mapping also.

Edith: Exceptionhandling wie?! Werden die Exceptions in die RVE gebubbelt?

Edith²: @Lester: Weil man auch mit Kanonen auf Spatzen schießen kann :)

Snevsied 03.01.2012 13:38

Gibt es eigentlich schon eine API zum reinschnuppern?

Xeno 03.01.2012 13:57

Take On H. 1.04 abwarten, dann wissen wir wie es implementiert ist und wie die API aussieht.
(Java wird es nicht für A2/OA geben).

Xeno

Snevsied 03.01.2012 14:02

Also wenn es dann auch Serversachen dabei sind, dann ist doch Cheaten usw. als offiziell freigegeben oder? Den man könnte ja z.B. eine App für Tables schreiben, die die Postionen aller Mitspieler anzeigt usw.

Wenn der Umfang der API wirklich so groß sein wird.

flickflack 03.01.2012 14:07

Das kannste schon seit OFP machen :)

Edith: Das mit der API hat natürlich den Vorteil, dass sie damit DLL-Injection/D3D-Hooks unterbinden können.

Snevsied 03.01.2012 14:10

Aber nicht so bequem wie es wird oder?

flickflack 03.01.2012 14:13

Kommt drauf an wo man sich als Coder wohlfühlt. Beim Prügeln von APIs oder eben low-level :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:51 Uhr.

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias


SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

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 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119