Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
563b4800ee | ||
|
|
21c73df3eb | ||
|
|
6743f4210a | ||
|
|
520a3dce25 | ||
|
|
2a6f2b0e52 |
No files matched your search
@@ -1,28 +1,48 @@
|
||||
extends Node
|
||||
|
||||
var voice_id
|
||||
var _tts_locale := ""
|
||||
|
||||
|
||||
func _ready():
|
||||
var voices = DisplayServer.tts_get_voices_for_language("de")
|
||||
if voices.size() > 0:
|
||||
voice_id = "German+Robosoft6"
|
||||
else:
|
||||
voices = DisplayServer.tts_get_voices_for_language("en")
|
||||
voice_id = voices[0]
|
||||
|
||||
# Connect with DialogueManager
|
||||
_update_voice_for_locale()
|
||||
DialogueManager.got_dialogue.connect(_on_dialogue)
|
||||
|
||||
|
||||
func _notification(what: int) -> void:
|
||||
if what == NOTIFICATION_TRANSLATION_CHANGED:
|
||||
_update_voice_for_locale()
|
||||
|
||||
|
||||
func _update_voice_for_locale() -> void:
|
||||
var locale := TranslationServer.get_locale()
|
||||
var lang := locale.substr(0, 2)
|
||||
if lang == _tts_locale and voice_id != null:
|
||||
return
|
||||
_tts_locale = lang
|
||||
|
||||
var voices = DisplayServer.tts_get_voices_for_language(lang)
|
||||
if voices.size() > 0:
|
||||
# Prefer a known German robotic voice when available; otherwise first matching voice
|
||||
if lang == "de" and "German+Robosoft6" in voices:
|
||||
voice_id = "German+Robosoft6"
|
||||
else:
|
||||
voice_id = voices[0]
|
||||
else:
|
||||
# Fallback to English if current language has no TTS voices
|
||||
voices = DisplayServer.tts_get_voices_for_language("en")
|
||||
if voices.size() > 0:
|
||||
voice_id = voices[0]
|
||||
else:
|
||||
voice_id = null
|
||||
|
||||
|
||||
func _on_dialogue(line):
|
||||
if voice_id == null:
|
||||
return
|
||||
|
||||
# Stop earlier text (important!)
|
||||
DisplayServer.tts_stop()
|
||||
|
||||
# Speak
|
||||
DisplayServer.tts_speak(line.text, voice_id, 100)
|
||||
|
||||
|
||||
func _stop_dialogue():
|
||||
DisplayServer.tts_stop()
|
||||
@@ -22,7 +22,7 @@ func _process(delta: float) -> void:
|
||||
|
||||
if collider is Grabbable_Object:
|
||||
if collider is Battery:
|
||||
prompt.text = collider.battery_label
|
||||
prompt.text = tr(collider.battery_label)
|
||||
if collider.grabbable == true and Input.is_action_just_pressed("grab"):
|
||||
grab(collider)
|
||||
bob.play_sound('pickup')
|
||||
@@ -40,7 +40,7 @@ func _process(delta: float) -> void:
|
||||
|
||||
|
||||
elif collider is Interactable_Object or collider is NPC_interactable:
|
||||
prompt.text = collider.prompt_message
|
||||
prompt.text = tr(collider.prompt_message)
|
||||
var thisTime = Time.get_unix_time_from_system()
|
||||
var deltaTime = thisTime - DialogueState.time_since_dialoge_open
|
||||
if collider.talkable == true and Input.is_action_just_pressed("talk") and (deltaTime > 0.5):
|
||||
@@ -51,7 +51,7 @@ func _process(delta: float) -> void:
|
||||
env.quiet_down_music()
|
||||
prompt.hide()
|
||||
elif bob.grabbed_item and bob.grabbed_item is Battery:
|
||||
prompt.text = bob.grabbed_item.battery_label
|
||||
prompt.text = tr(bob.grabbed_item.battery_label)
|
||||
else:
|
||||
prompt.text = ""
|
||||
|
||||
|
||||
@@ -335,8 +335,7 @@ autoplay = "idle"
|
||||
[node name="Label3D" type="Label3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.7864695, -0.07333246)
|
||||
billboard = 1
|
||||
text = "Interagieren
|
||||
(t / Enter)"
|
||||
text = "ALIEN_TALK"
|
||||
font = ExtResource("4_0lt3b")
|
||||
outline_size = 4
|
||||
width = 80.0
|
||||
|
||||
@@ -3,7 +3,13 @@ class_name Balloon
|
||||
|
||||
@export var pop_up_text = ""
|
||||
@export var wait_time = 4.0
|
||||
@export var image_path = "res://assets/Images/spiel_ballon_text2.png"
|
||||
@export var image_path: String = "res://assets/Images/spiel_ballon_text2.png"
|
||||
const ENGLISH_BALLOON_IMAGES: Dictionary[String, String] = {
|
||||
"res://assets/Images/spiel_ballon_mail3.png": "res://assets/Images/spiel_ballon_mail_englisch.png",
|
||||
"res://assets/Images/spiel_ballon_mrt3.png": "res://assets/Images/spiel_ballon_mrt_englisch.png",
|
||||
"res://assets/Images/spiel_ballon_bot3a.png": "res://assets/Images/spiel_ballon_bot_englisch.png",
|
||||
"res://assets/Images/spiel_ballon_surveillance3b.png": "res://assets/Images/spiel_ballon_recognition_englisch.png",
|
||||
}
|
||||
@onready var label_3d: Label3D = $Label3D
|
||||
@onready var balloon_model: MeshInstance3D = $Balloon_model
|
||||
@onready var collision_shape_3d: CollisionShape3D = $CollisionShape3D
|
||||
@@ -15,7 +21,10 @@ func _ready() -> void:
|
||||
if child is RigidBody3D:
|
||||
child.freeze = true
|
||||
child.gravity_scale = 0.0
|
||||
$label.texture = load(image_path)
|
||||
var shown_image: String = image_path
|
||||
if TranslationServer.get_locale().begins_with("en") and ENGLISH_BALLOON_IMAGES.has(image_path):
|
||||
shown_image = ENGLISH_BALLOON_IMAGES[image_path]
|
||||
$label.texture = load(shown_image)
|
||||
|
||||
func _on_area_3d_body_entered(body: Node3D) -> void:
|
||||
if not body.is_in_group("throwable"):
|
||||
|
||||
@@ -33,7 +33,7 @@ func _ready() -> void:
|
||||
blink_timer.one_shot = false
|
||||
blink_timer.timeout.connect(_on_blink_timeout)
|
||||
add_child(blink_timer)
|
||||
ai_threat.text = display_text
|
||||
ai_threat.text = tr(display_text)
|
||||
for lamp in status_lamps:
|
||||
lamp.visible = true
|
||||
if lamp.get_surface_override_material(0) == null:
|
||||
|
||||
@@ -16,7 +16,7 @@ transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0, 0
|
||||
collision_layer = 8
|
||||
collision_mask = 7
|
||||
script = ExtResource("1_6jshr")
|
||||
prompt_message = "drücken Sie [t] oder [Enter]"
|
||||
prompt_message = "HELPER_PROMPT"
|
||||
talkable = true
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||
@@ -41,11 +41,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.3250453e-09, -0.54445666, -
|
||||
[node name="Label3D" type="Label3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.3886542, 0)
|
||||
billboard = 1
|
||||
text = "Rede mit mir!
|
||||
(t / Enter)
|
||||
|
|
||||
|
|
||||
\\/"
|
||||
text = "HELPER_TALK"
|
||||
font_size = 42
|
||||
outline_size = 8
|
||||
|
||||
|
||||
@@ -27,11 +27,11 @@ var answered_correctly := false
|
||||
|
||||
func _ready() -> void:
|
||||
# Texte setzen
|
||||
question_label.text = question
|
||||
answer_0_label.text = answer_0
|
||||
answer_1_label.text = answer_1
|
||||
answer_2_label.text = answer_2
|
||||
answer_3_label.text = answer_3
|
||||
question_label.text = tr(question)
|
||||
answer_0_label.text = tr(answer_0)
|
||||
answer_1_label.text = tr(answer_1)
|
||||
answer_2_label.text = tr(answer_2)
|
||||
answer_3_label.text = tr(answer_3)
|
||||
|
||||
# Signale verbinden
|
||||
answer_pad_0.body_entered.connect(_on_answer_entered.bind(0))
|
||||
|
||||
@@ -52,17 +52,16 @@ func _process(delta: float) -> void:
|
||||
|
||||
if not_congratulated_1 and aliens.get_child_count() <= aliens_start_count-5:
|
||||
not_congratulated_1 = false
|
||||
show_congratulations("Glückwunsch!
|
||||
Die erste Aufgabe ist geschafft.", "Definitionen von KI")
|
||||
show_congratulations("TASK1_CONGRATS", "TOPIC_AI_DEFS")
|
||||
|
||||
|
||||
func show_congratulations(text, text_2) -> void:
|
||||
print(text)
|
||||
$Player/helper/helper.celebrate()
|
||||
$Hilfestellung/CanvasLayer.visible = false
|
||||
$Congratulations/CanvasLayer/Panel/Label.text = text
|
||||
$Congratulations/CanvasLayer/Panel/Label.text = tr(text)
|
||||
$Congratulations/CanvasLayer.visible = true
|
||||
$Congratulations/CanvasLayer/Panel/Label_repeat.text = "(Um die "+ text_2 + " noch einmal nachzulesen, sprechen Sie mit ihrem Helfer)"
|
||||
$Congratulations/CanvasLayer/Panel/Label_repeat.text = tr("CONGRATS_REPEAT") % tr(text_2)
|
||||
await get_tree().create_timer(5.0).timeout
|
||||
$Player/helper/helper.stop_anim()
|
||||
$Congratulations/CanvasLayer.visible = false
|
||||
@@ -71,10 +70,16 @@ func openLinkinBrowser(link):
|
||||
OS.shell_open(link)
|
||||
|
||||
func openAIActinBrowser():
|
||||
openLinkinBrowser("https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32024R1689")
|
||||
if TranslationServer.get_locale().begins_with("en"):
|
||||
openLinkinBrowser("https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32024R1689")
|
||||
else:
|
||||
openLinkinBrowser("https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32024R1689")
|
||||
|
||||
func openDSGVOinBrowser():
|
||||
openLinkinBrowser("https://dsgvo-gesetz.de/")
|
||||
if TranslationServer.get_locale().begins_with("en"):
|
||||
openLinkinBrowser("https://gdpr-info.eu/")
|
||||
else:
|
||||
openLinkinBrowser("https://dsgvo-gesetz.de/")
|
||||
|
||||
func _on_openChatBot():
|
||||
$Hilfestellung/CanvasLayer.visible = false
|
||||
@@ -110,8 +115,8 @@ func _on_pressure_block_a3_activated() -> void:
|
||||
func _on_pressure_block_a_1_activated() -> void:
|
||||
current_task = 1
|
||||
DialogueState.currentTask = 1
|
||||
current_text = "[Enter] oder [t] drücken, um mit den Aliens zu reden"
|
||||
$Hinweistexte/CanvasLayer/Panel/Label.text = "Wenn Sie weiterlaufen werden Ihnen einige Aliens begegnen. Sprechen Sie mit ihnen, um verschiedene Definitionen von Künstlicher Intelligenz (KI) kennenzulernen."
|
||||
current_text = tr("HINT_TALK_ALIENS")
|
||||
$Hinweistexte/CanvasLayer/Panel/Label.text = tr("HINT_ALIENS")
|
||||
$Hinweistexte/CanvasLayer.visible = true
|
||||
if $Tutorial:
|
||||
$Tutorial.queue_free()
|
||||
@@ -123,11 +128,8 @@ func _on_pressure_block_a_1_activated() -> void:
|
||||
|
||||
func _on_pressure_block_a_2_activated() -> void:
|
||||
current_task = 2
|
||||
current_text = "Zielen mit der Maus, Klicken zum Werfen, [r] zum Wechsel zwischen Wurf- und Kameramodus"
|
||||
$Hinweistexte/CanvasLayer/Panel/Label.text = "Laufen Sie weiter zur Wurfzone.
|
||||
Dort angekommen, können Sie die Ballons abwerfen, um zu entdecken, in was für Systemen KI bereits eingesetzt wird bzw. werden kann.
|
||||
Sammeln Sie danach die Batterien, Sie werden sie im weiteren Verlauf benötigen.
|
||||
Zur Erinnerung: Zielen mit der Maus (Fadenkreuz) und Werfen durch Klicken. Wenn Sie kein Fadenkreuz sehen, evtl. [r] drücken, um den Modus zu wechseln."
|
||||
current_text = tr("HINT_THROW_CONTROLS")
|
||||
$Hinweistexte/CanvasLayer/Panel/Label.text = tr("HINT_THROW_ZONE")
|
||||
$Hinweistexte/CanvasLayer.visible = true
|
||||
|
||||
|
||||
@@ -141,7 +143,7 @@ func _on_pressure_block_a_3_1_activated() -> void:
|
||||
reset_music_volume()
|
||||
current_task = 3
|
||||
DialogueState.currentTask = 3
|
||||
current_text = "Auswahl der Batterien im Inventar [c], Einfügen mit [f] - ([e] zum wieder rausholen, [q] ablegen)"
|
||||
current_text = tr("HINT_BATTERY_CONTROLS")
|
||||
$Objects/pressure_blocks/PressureBlock_A3_1.current_weight = 10.0
|
||||
$AnimationPlayer.play("start_ordering_game")
|
||||
_on_pressure_block_deactivated()
|
||||
@@ -152,11 +154,10 @@ func _on_balloon_tree_exited() -> void:
|
||||
if popped_balloons == Global.TOTAL_BALLOONS_A2 and current_task == 2:
|
||||
not_congratulated_2 = false
|
||||
DialogueState.batteriesFlag = true
|
||||
show_congratulations("Glückwunsch!
|
||||
Die 2. Aufgabe ist geschafft.", "KI-Systeme")
|
||||
show_congratulations("TASK2_CONGRATS", "TOPIC_AI_SYSTEMS")
|
||||
$Objects/arrows/after_throw.visible = true
|
||||
$Objects/Fences/no_arrows/barrier_throw.position.x = 4.0
|
||||
$Hilfestellung/CanvasLayer/Panel/Label.text = "Sammeln Sie die Batterien auf (durch Vorbeilaufen) - einen Counter dazu sehen Sie oben links"
|
||||
$Hilfestellung/CanvasLayer/Panel/Label.text = tr("HINT_COLLECT_BATTERIES")
|
||||
$Hilfestellung/CanvasLayer.visible = true
|
||||
|
||||
|
||||
@@ -166,7 +167,7 @@ func _on_pressure_block_a_4_activated() -> void:
|
||||
DialogueState.currentTask = 4
|
||||
DialogueState.personalDataFlag = true
|
||||
$Objects/spaceship/keypad.visible = true
|
||||
current_text = "[k] drücken zum Starten des nächsten Minispiels"
|
||||
current_text = tr("HINT_START_KEYPAD")
|
||||
$Hilfestellung/CanvasLayer.visible = true
|
||||
$Objects/pressure_blocks/PressureBlock_A4.current_weight = 10.0
|
||||
DialogueManager.show_chosen_dialogue_balloon(load($Objects/pressure_blocks/PressureBlock_A4.text_on_activation), "/game_balloons/game_balloon_v_2.tscn", "start")
|
||||
@@ -176,7 +177,7 @@ func _on_pressure_block_a_4_activated() -> void:
|
||||
func _on_keypad_game_finished() -> void:
|
||||
$Keypad.visible = false
|
||||
$Objects/spaceship/keypad.visible = false
|
||||
$Hilfestellung/CanvasLayer/Panel/Label.text = "Gehen Sie durch die Tür ins Raumschiff"
|
||||
$Hilfestellung/CanvasLayer/Panel/Label.text = tr("HINT_ENTER_SHIP")
|
||||
$Hilfestellung/CanvasLayer.visible = true
|
||||
show_door.emit()
|
||||
|
||||
@@ -193,8 +194,7 @@ func _on_animation_player_animation_finished(anim_name: StringName) -> void:
|
||||
$AnimationPlayer.play('rotate_label')
|
||||
if anim_name == "ordering_finished":
|
||||
generators.queue_free()
|
||||
show_congratulations("Glückwunsch!
|
||||
Die 3. Aufgabe ist geschafft.", "Risikostufen von KI")
|
||||
show_congratulations("TASK3_CONGRATS", "TOPIC_AI_RISKS")
|
||||
$Objects/pressure_blocks/PressureBlock_A4.position = Vector3(-87.26, 3.787, 209.9)
|
||||
|
||||
|
||||
|
||||
@@ -2478,7 +2478,7 @@ mesh = SubResource("BoxMesh_e7rlp")
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="Objects/accent3"]
|
||||
transform = Transform3D(-0.4, 0, -6.039832e-08, 0, 0.4, 0, 6.039832e-08, 0, -0.4, -0.028839111, 0.6215837, -0.15538025)
|
||||
text = "Wurfzone"
|
||||
text = "THROW_ZONE"
|
||||
font_size = 128
|
||||
outline_size = 42
|
||||
|
||||
@@ -2524,7 +2524,7 @@ collision_mask = 0
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="Objects/arrows/help1/Arrow8"]
|
||||
transform = Transform3D(-4.37114e-08, 1, -4.37114e-08, -5.96046e-08, -4.37114e-08, -1, -1, -4.37114e-08, 5.96046e-08, 0.520177, -0.10141, 0.149384)
|
||||
text = "Hier geht es weiter"
|
||||
text = "CONTINUE_HERE"
|
||||
font_size = 64
|
||||
outline_size = 24
|
||||
|
||||
@@ -3138,7 +3138,7 @@ collision_mask = 0
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="Objects/Chip0/block"]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -28.6089, 3.01642, -2.88716)
|
||||
text = "Einmal hier drauf springen"
|
||||
text = "JUMP_HERE"
|
||||
font_size = 64
|
||||
outline_size = 24
|
||||
|
||||
@@ -3310,21 +3310,21 @@ transform = Transform3D(-0.3992129, 0, 0.025081253, 0, 0.4, 0, -0.025081253, 0,
|
||||
[node name="BatteryBox" parent="Objects/generators" instance=ExtResource("11_n6emc")]
|
||||
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0, -2.82359)
|
||||
power_needed = 25
|
||||
display_text = "Minimal"
|
||||
display_text = "RISK_MINIMAL"
|
||||
|
||||
[node name="BatteryBox2" parent="Objects/generators" instance=ExtResource("11_n6emc")]
|
||||
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0, -1.0177)
|
||||
display_text = "Gering"
|
||||
display_text = "RISK_LIMITED"
|
||||
|
||||
[node name="BatteryBox3" parent="Objects/generators" instance=ExtResource("11_n6emc")]
|
||||
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0, 1.06367)
|
||||
power_needed = 75
|
||||
display_text = "Hoch"
|
||||
display_text = "RISK_HIGH"
|
||||
|
||||
[node name="BatteryBox4" parent="Objects/generators" instance=ExtResource("11_n6emc")]
|
||||
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0, 3.31763)
|
||||
power_needed = 100
|
||||
display_text = "Inakzeptabel"
|
||||
display_text = "RISK_UNACCEPTABLE"
|
||||
|
||||
[node name="Fences" type="Node3D" parent="Objects"]
|
||||
|
||||
@@ -4109,7 +4109,7 @@ skeleton = NodePath("")
|
||||
[node name="Label3D" type="Label3D" parent="Objects/spaceship/keypad"]
|
||||
transform = Transform3D(1, 0, -5.96046e-08, 0, 1, 0, 5.96046e-08, 0, 1, 0.00621033, 0.764771, 0.267517)
|
||||
modulate = Color(0, 0.948034, 0.903071, 1)
|
||||
text = "Passcode erforderlich"
|
||||
text = "PASSCODE_REQUIRED"
|
||||
font_size = 24
|
||||
|
||||
[node name="door_cover" type="StaticBody3D" parent="Objects/spaceship"]
|
||||
@@ -4201,13 +4201,13 @@ balloon_resource = "res://Resources/meshes/dino1.tres"
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="Objects/Easter_Egg"]
|
||||
transform = Transform3D(0.9063077, 0, 0.42261824, 0, 1, 0, -0.42261824, 0, 0.9063077, -1.0948029, -2.2045398, 2.7432632)
|
||||
text = "Vorbeilaufen oder Abwerfen zum Auswählen"
|
||||
text = "EASTER_SELECT"
|
||||
outline_size = 8
|
||||
|
||||
[node name="Label3D2" type="Label3D" parent="Objects/Easter_Egg"]
|
||||
transform = Transform3D(0.5917882, 0, 0.8060935, 0, 1, 0, -0.8060935, 0, 0.5917882, -1.2124329, -1.6598244, 3.0003967)
|
||||
modulate = Color(0.15294118, 1, 1, 1)
|
||||
text = "Verstecktes Lager mit Spezial-Accessoires gefunden!"
|
||||
text = "EASTER_FOUND"
|
||||
font_size = 38
|
||||
outline_size = 8
|
||||
|
||||
@@ -4259,38 +4259,38 @@ transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, -119.335, 1.90521, 199.
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A1"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0212021, 0.227379, 0.538483)
|
||||
text = "Aufgabe 1"
|
||||
text = "TASK_1"
|
||||
|
||||
[node name="Label3D2" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A1"]
|
||||
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -0.462105, 0.227379, 0.0402069)
|
||||
text = "Aufgabe 1"
|
||||
text = "TASK_1"
|
||||
|
||||
[node name="Label3D3" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A1"]
|
||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.0716324, 0.227379, -0.426834)
|
||||
text = "Aufgabe 1"
|
||||
text = "TASK_1"
|
||||
|
||||
[node name="Label3D4" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A1"]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0.421196, 0.227379, -0.0301208)
|
||||
text = "Aufgabe 1"
|
||||
text = "TASK_1"
|
||||
|
||||
[node name="PressureBlock_A2" parent="Objects/pressure_blocks" instance=ExtResource("15_n6emc")]
|
||||
transform = Transform3D(-6.55671e-08, 0, -1.5, 0, 1.5, 0, 1.5, 0, -6.55671e-08, -99.9195, 2.05228, 170.424)
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A2"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0157394, 0.227379, 0.491547)
|
||||
text = "Aufgabe 2"
|
||||
text = "TASK_2"
|
||||
|
||||
[node name="Label3D2" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A2"]
|
||||
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -0.460144, 0.227379, 0.0241394)
|
||||
text = "Aufgabe 2"
|
||||
text = "TASK_2"
|
||||
|
||||
[node name="Label3D3" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A2"]
|
||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0.0236588, 0.227379, -0.487915)
|
||||
text = "Aufgabe 2"
|
||||
text = "TASK_2"
|
||||
|
||||
[node name="Label3D4" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A2"]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0.438354, 0.227379, 0.0241394)
|
||||
text = "Aufgabe 2"
|
||||
text = "TASK_2"
|
||||
|
||||
[node name="PressureBlock_A3" parent="Objects/pressure_blocks" instance=ExtResource("15_n6emc")]
|
||||
transform = Transform3D(-1.5, 0, -1.31134e-07, 0, 1.5, 0, 1.31134e-07, 0, -1.5, -82.7234, 3.78661, 200.859)
|
||||
@@ -4298,19 +4298,19 @@ text_on_activation = "res://Interact/dialogue/explain_ordering_game.dialogue"
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A3"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0716324, 0.227379, 0.500092)
|
||||
text = "Aufgabe 3"
|
||||
text = "TASK_3"
|
||||
|
||||
[node name="Label3D2" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A3"]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0.410625, 0.227379, 0.0306549)
|
||||
text = "Aufgabe 3"
|
||||
text = "TASK_3"
|
||||
|
||||
[node name="Label3D3" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A3"]
|
||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.0290184, 0.227379, -0.518616)
|
||||
text = "Aufgabe 3"
|
||||
text = "TASK_3"
|
||||
|
||||
[node name="Label3D4" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A3"]
|
||||
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -0.502998, 0.227379, 0.0580139)
|
||||
text = "Aufgabe 3"
|
||||
text = "TASK_3"
|
||||
|
||||
[node name="PressureBlock_A3_1" parent="Objects/pressure_blocks" instance=ExtResource("15_n6emc")]
|
||||
transform = Transform3D(-2.79742, 0, -8.69725e-07, 0, 5, 0, 4.22398e-07, 0, -5.75993, -81.7063, 3.7075267, 209.986)
|
||||
@@ -4324,19 +4324,19 @@ text_on_activation = "res://Interact/dialogue/keypad.dialogue"
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A4"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0716324, 0.227379, 0.500092)
|
||||
text = "Aufgabe 4"
|
||||
text = "TASK_4"
|
||||
|
||||
[node name="Label3D2" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A4"]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0.410625, 0.227379, 0.0306549)
|
||||
text = "Aufgabe 4"
|
||||
text = "TASK_4"
|
||||
|
||||
[node name="Label3D3" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A4"]
|
||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.0290184, 0.227379, -0.518616)
|
||||
text = "Aufgabe 4"
|
||||
text = "TASK_4"
|
||||
|
||||
[node name="Label3D4" type="Label3D" parent="Objects/pressure_blocks/PressureBlock_A4"]
|
||||
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -0.502998, 0.227379, 0.0580139)
|
||||
text = "Aufgabe 4"
|
||||
text = "TASK_4"
|
||||
|
||||
[node name="npcs" type="Node3D" parent="."]
|
||||
|
||||
@@ -4548,8 +4548,7 @@ offset_bottom = 165.0
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
text = "Mach dich mit der
|
||||
Steuerung vertraut"
|
||||
text = "TUTORIAL_TITLE"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Panel2" type="Panel" parent="Tutorial/CanvasLayer"]
|
||||
@@ -4565,7 +4564,7 @@ offset_top = 5.0
|
||||
offset_right = 1308.0
|
||||
offset_bottom = 72.0
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Probieren Sie die Steuerung aus"
|
||||
text = "TUTORIAL_SUBTITLE"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
@@ -4610,8 +4609,7 @@ offset_bottom = 179.0
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 5
|
||||
theme_override_font_sizes/font_size = 64
|
||||
text = "Glückwunsch!
|
||||
Aufgabe ist geschafft."
|
||||
text = "TASK_CONGRATS_DEFAULT"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
@@ -4624,7 +4622,7 @@ offset_bottom = 251.0
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 5
|
||||
theme_override_font_sizes/font_size = 32
|
||||
text = "(Um die Definitionen noch einmal nachzulesen, sprechen Sie mit ihrem Helfer)"
|
||||
text = "CONGRATS_REPEAT"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="Hinweistexte" type="Node3D" parent="."]
|
||||
@@ -4647,7 +4645,7 @@ offset_top = 140.0
|
||||
offset_right = 1710.0
|
||||
offset_bottom = 940.0
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "In der nun folgenden Aufgabe..."
|
||||
text = "HINT_NEXT_TASK"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
autowrap_mode = 3
|
||||
@@ -4667,7 +4665,7 @@ layout_mode = 0
|
||||
offset_right = 1920.0
|
||||
offset_bottom = 50.0
|
||||
theme_override_font_sizes/font_size = 36
|
||||
text = "...drücken"
|
||||
text = "HINT_PRESS"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
|
||||
@@ -40,8 +40,8 @@ normal_texture = ExtResource("6_0ubgh")
|
||||
|
||||
[sub_resource type="Image" id="Image_c0pv3"]
|
||||
data = {
|
||||
"data": PackedByteArray(255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 186, 214, 182, 181, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36,Line truncated
|
||||
"format": "DXT5 RGBA8",
|
||||
"data": PackedByteArray(203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, 255, 203, 204, 203, Line truncated
|
||||
"format": "RGBA8",
|
||||
"height": 1024,
|
||||
"mipmaps": true,
|
||||
"width": 1024
|
||||
@@ -52,8 +52,8 @@ image = SubResource("Image_c0pv3")
|
||||
|
||||
[sub_resource type="Image" id="Image_pd7rv"]
|
||||
data = {
|
||||
"data": PackedByteArray(255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146, 36, 73, 146, 36, 95, 132, 95, 115, 170, 170, 170, 170, 255, 255, 73, 146Line truncated
|
||||
"format": "DXT5 RGBA8",
|
||||
"data": PackedByteArray(126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, 255, 126, 127, 255, Line truncated
|
||||
"format": "RGBA8",
|
||||
"height": 1024,
|
||||
"mipmaps": true,
|
||||
"width": 1024
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
[b]Datenschutzinformation[/b]
|
||||
|
||||
Wir verarbeiten personenbezogene Daten, die beim Besuch unserer Website erhoben werden, unter Beachtung der geltenden datenschutzrechtlichen Bestimmungen, insbesondere der EU-Datenschutz-Grundverordnung (DSGVO) und des Landesdatenschutzgesetzes Mecklenburg-Vorpommern (DSG MV).
|
||||
|
||||
Der Verantwortliche im Sinne der Datenschutz-Grundverordnung und anderer nationaler Datenschutzgesetze der Mitgliedsstaaten sowie sonstiger datenschutzrechtlicher Bestimmungen sind die:
|
||||
|
||||
Universität Greifswald
|
||||
Gesetzlich vertreten durch die Rektorin
|
||||
Prof. Dr. Katharina Riedel
|
||||
|
||||
Postanschrift: 17487 Greifswald
|
||||
Hausanschrift: Domstraße 11, Eingang 2, 17489 Greifswald
|
||||
Telefon +49 3834 420 0
|
||||
Telefax +49 3834 420 1105
|
||||
rektorin@uni-greifswald.de
|
||||
|
||||
|
||||
[b]Rechtsgrundlagen[/b]
|
||||
Soweit die Universität für die Verarbeitung personenbezogener Daten eine Einwilligung (u. a. allgemeine Anfragen, Kontaktformular, Newsletter) der betroffenen Person einholt, dient Art. 6 Abs. 1 lit. a DSGVO als Rechtsgrundlage.
|
||||
|
||||
[b]Protokollierung[/b]
|
||||
|
||||
Das Spiel wird auf internen Ressourcen der Universität Greifswald gehostet. Bei der Nutzung des Spiel geben sie möglicherweise personenbezogene Daten an. Das können Ihr Spielername sowie alle Texte die Sie eingeben, um sich mit dem Helfer im Spiel zu unterhalten sein. Weder die Nachrichten die Sie mit dem Helfer im Spiel austauschen, ihr Spielername oder IP-Adresse werden gespeichert. Wir weisen außederm ausdrücklich darauf hin, dass es sich bei dem Helfer im Spiel um eine Form von künstlicher Intelligenz, ein Sprachmodell, handelt.
|
||||
|
||||
[b]Cookies[/b]
|
||||
Wir nutzen keine Cookies.
|
||||
|
||||
[b]Ihre Rechte[/b]
|
||||
Sie haben das Recht, eine erteilte Einwilligung in die Verarbeitung personenbezogener Daten jederzeit und ohne Angaben von Gründen mit Wirkung für die Zukunft schriftlich gegenüber der Universität Greifswald, Domstraße 11, 17489 Greifswald oder per E-Mail an hochschulkommunikation@uni-greifswald.de zu widerrufen.
|
||||
|
||||
Darüber hinaus haben Sie das Recht, auf Antrag unentgeltliche Auskunft über Ihre gespeicherten personenbezogenen Daten, deren Herkunft und Empfänger, den Zweck und die Dauer der Datenverarbeitung zu erhalten. Zusätzlich haben Sie unter bestimmten Voraussetzungen das Recht auf Berichtigung, auf Einschränkung der Verarbeitung (z. B. Sperrung), auf Löschung sowie auf die Datenübertragbarkeit Ihrer Daten.
|
||||
|
||||
Ferner haben Sie das Recht, bei der zuständigen Aufsichtsbehörde für den Datenschutz eine Beschwerde einzureichen, wenn Sie der Ansicht sind, dass die Verarbeitung Ihrer personenbezogenen Daten nicht rechtmäßig erfolgt. Zuständige Aufsichtsbehörde ist:
|
||||
|
||||
Der Landesbeauftragte für Datenschutz und Informationsfreiheit Mecklenburg-Vorpommern
|
||||
Werderstraße 74a, 19055 Schwerin
|
||||
Telefon: +49 385 59494 0
|
||||
info@datenschutz-mv.de
|
||||
|
||||
Bei Fragen zum Datenschutz können Sie sich an den behördlichen Datenschutzbeauftragten der Universität wenden:
|
||||
|
||||
Behördliche Datenschutzbeauftragte
|
||||
Dominique Kandzia
|
||||
SIS – Schweriner IT- und Servicegesellschaft mbH
|
||||
Eckdrift 93, 19061 Schwerin
|
||||
Telefon +49 385 20092 1218
|
||||
datenschuetzer@uni-greifswald.de
|
||||
|
||||
Letzte Änderung: 22.05.2026.
|
||||
@@ -0,0 +1,49 @@
|
||||
[b]Privacy information[/b]
|
||||
|
||||
We process personal data collected when you visit our website in compliance with the applicable data protection provisions, in particular the EU General Data Protection Regulation (GDPR) and the State Data Protection Act of Mecklenburg-Vorpommern (DSG MV).
|
||||
|
||||
The controller within the meaning of the General Data Protection Regulation and other national data protection laws of the Member States as well as other data protection provisions is:
|
||||
|
||||
University of Greifswald
|
||||
Legally represented by the Rector
|
||||
Prof. Dr. Katharina Riedel
|
||||
|
||||
Postal address: 17487 Greifswald
|
||||
Street address: Domstraße 11, Entrance 2, 17489 Greifswald
|
||||
Telephone +49 3834 420 0
|
||||
Fax +49 3834 420 1105
|
||||
rektorin@uni-greifswald.de
|
||||
|
||||
|
||||
[b]Legal bases[/b]
|
||||
Where the university obtains the consent of the data subject for the processing of personal data (including general enquiries, contact form, newsletter), Art. 6 (1) (a) GDPR serves as the legal basis.
|
||||
|
||||
[b]Logging[/b]
|
||||
|
||||
The game is hosted on internal resources of the University of Greifswald. When using the game you may provide personal data. This may be your player name as well as any text you enter in order to talk to the helper in the game. Neither the messages you exchange with the helper in the game, your player name, nor your IP address are stored. We also expressly point out that the helper in the game is a form of artificial intelligence, a language model.
|
||||
|
||||
[b]Cookies[/b]
|
||||
We do not use cookies.
|
||||
|
||||
[b]Your rights[/b]
|
||||
You have the right to withdraw any consent given to the processing of personal data at any time and without giving reasons, with effect for the future, in writing to the University of Greifswald, Domstraße 11, 17489 Greifswald, or by email to hochschulkommunikation@uni-greifswald.de.
|
||||
|
||||
In addition, you have the right, upon request, to receive free information about your stored personal data, its origin and recipients, and the purpose and duration of the data processing. You also have, under certain conditions, the right to rectification, to restriction of processing (e.g. blocking), to erasure and to data portability.
|
||||
|
||||
Furthermore, you have the right to lodge a complaint with the competent data protection supervisory authority if you believe that the processing of your personal data is not lawful. The competent supervisory authority is:
|
||||
|
||||
The State Commissioner for Data Protection and Freedom of Information of Mecklenburg-Vorpommern
|
||||
Werderstraße 74a, 19055 Schwerin
|
||||
Telephone: +49 385 59494 0
|
||||
info@datenschutz-mv.de
|
||||
|
||||
If you have questions about data protection, you can contact the university's data protection officer:
|
||||
|
||||
Data protection officer
|
||||
Dominique Kandzia
|
||||
SIS – Schweriner IT- und Servicegesellschaft mbH
|
||||
Eckdrift 93, 19061 Schwerin
|
||||
Telephone +49 385 20092 1218
|
||||
datenschuetzer@uni-greifswald.de
|
||||
|
||||
Last updated: 22.05.2026.
|
||||
@@ -0,0 +1,34 @@
|
||||
[b]Impressum[/b]
|
||||
Diese Website enthält ein von der Universität Greifswald intern gehostetes Spiel zum Erlernen des EU AI Acts.
|
||||
|
||||
[b]Herausgeberin:[/b]
|
||||
|
||||
Universität Greifswald
|
||||
Gesetzlich vertreten durch die Rektorin
|
||||
Prof. Dr. Katharina Riedel
|
||||
|
||||
Postanschrift: 17487 Greifswald
|
||||
Hausanschrift: Domstraße 11, Eingang 2, 17489 Greifswald
|
||||
Telefon +49 3834 420 0
|
||||
Telefax +49 3834 420 1105
|
||||
rektorin@uni-greifswald.de
|
||||
Umsatzsteuer-ID-Nummer: DE 137 584 813
|
||||
|
||||
[b]Haftung für Inhalte[/b]
|
||||
Dieses Spiel dient einer Einführung in den AI Act. Wir haben uns bemüht es verständlich und korrekt darzustellen. Die Universität Greifswald übernimmt keinerlei Gewähr für die Aktualität, Korrektheit, Vollständigkeit oder Qualität der bereitgestellten Informationen. Haftungsansprüche gegen die Universität, die sich auf Schäden materieller oder ideeller Art beziehen, die durch die Nutzung oder Nichtnutzung der dargebotenen Informationen bzw. durch die Nutzung fehlerhafter und unvollständiger Informationen verursacht wurden, sind grundsätzlich ausgeschlossen, sofern seitens der Universität kein nachweislich vorsätzliches oder grob fahrlässiges Verschulden vorliegt. Alle Angebote sind freibleibend und unverbindlich. Die Universität behält es sich ausdrücklich vor, Teile des Spiels oder das gesamte Angebot ohne gesonderte Ankündigung zu verändern, zu ergänzen, zu löschen oder die Veröffentlichung zeitweise oder endgültig einzustellen. Gleiches gilt wenn Sie das Spiel von unserem Repository unter https://git.uni-greifswald.de/GAIM/gaim downloaden und nutzen.
|
||||
|
||||
Wenn Sie konkrete Fragen zum EU AI Act haben, verlassen Sie sich nicht auf das Spiel sondern konsultieren Sie den offiziellen Gesetzestext (Stand 05.2026 verfügbar unter https://artificialintelligenceact.eu/de/ai-act-explorer/) und fragen Sie eine:n Expert:in.
|
||||
|
||||
Hinweise und Korrekturen inhaltlicher Art senden Sie bitte an hochschulkommunikation@uni-greifswald.de .
|
||||
|
||||
[b]Links zu Internetseiten von Dritten[/b]
|
||||
Verweise und Links Bei direkten oder indirekten Verweisen auf fremde Webseiten („Hyperlinks“), die außerhalb des Verantwortungsbereiches der Universität liegen, würde eine Haftungsverpflichtung ausschließlich in dem Fall in Kraft treten, in dem der/die Autor/in von den Inhalten Kenntnis hat und es ihm/ihr technisch möglich und zumutbar wäre, die Nutzung im Falle rechtswidriger Inhalte zu verhindern. Die Universität erklärt hiermit ausdrücklich, dass zum Zeitpunkt der Linksetzung keine illegalen Inhalte auf den zu verlinkenden Seiten erkennbar waren. Auf die aktuelle und zukünftige Gestaltung, die Inhalte oder die Urheberschaft der verlinkten/verknüpften Seiten hat die Universität keinerlei Einfluss. Deshalb distanziert sie sich hiermit ausdrücklich von allen Inhalten aller verlinkten/verknüpften Seiten, die nach der Linksetzung verändert wurden. Diese Feststellung gilt für alle innerhalb des eigenen Internetangebotes gesetzten Links und Verweise sowie für Fremdeinträge in von der Universität eingerichteten Gästebüchern, Diskussionsforen, Linkverzeichnissen, Mailinglisten und in allen anderen Formen von Datenbanken, auf deren Inhalt externe Schreibzugriffe möglich sind. Für illegale, fehlerhafte oder unvollständige Inhalte und insbesondere für Schäden, die aus der Nutzung oder Nichtnutzung solcherart dargebotener Informationen entstehen, haftet allein der Anbieter der Seite, auf welche verwiesen wurde, nicht derjenige, der über Links auf die jeweilige Veröffentlichung lediglich verweist.
|
||||
|
||||
[b]Urheberrecht[/b]
|
||||
Das hier zur Verfügung gestellte Spiel ist unter der Lizenz GNU GPLv3 frei verfügbar und darf heruntergeladen, verändert und entsprechend der Lizenz weiterentwickelt werden.
|
||||
|
||||
[b]Musik[/b]
|
||||
Musik stammt von : https://opengameart.org/, Credits gehen unter anderem an Peachtea@You're Perfect Studio (Intro), syncopika (Musik im Spiel) und Metaruka (Weltraum).
|
||||
Sound-Effekte von Juhani Junkala.
|
||||
|
||||
Beachten Sie auch das Impressum der Universität Greifswald.
|
||||
@@ -0,0 +1,34 @@
|
||||
[b]Legal notice[/b]
|
||||
This website contains a game for learning about the EU AI Act, hosted internally by the University of Greifswald.
|
||||
|
||||
[b]Publisher:[/b]
|
||||
|
||||
University of Greifswald
|
||||
Legally represented by the Rector
|
||||
Prof. Dr. Katharina Riedel
|
||||
|
||||
Postal address: 17487 Greifswald
|
||||
Street address: Domstraße 11, Entrance 2, 17489 Greifswald
|
||||
Telephone +49 3834 420 0
|
||||
Fax +49 3834 420 1105
|
||||
rektorin@uni-greifswald.de
|
||||
VAT ID number: DE 137 584 813
|
||||
|
||||
[b]Liability for content[/b]
|
||||
This game is intended as an introduction to the AI Act. We have tried to present it in a way that is understandable and correct. The University of Greifswald accepts no liability for the timeliness, correctness, completeness or quality of the information provided. Claims for liability against the university relating to material or immaterial damage caused by the use or non-use of the information presented, or by the use of incorrect and incomplete information, are excluded in principle, unless the university is demonstrably guilty of intent or gross negligence. All offers are subject to change and non-binding. The university expressly reserves the right to change, supplement or delete parts of the game or the entire offering without separate notice, or to suspend publication temporarily or permanently. The same applies if you download and use the game from our repository at https://git.uni-greifswald.de/GAIM/gaim.
|
||||
|
||||
If you have specific questions about the EU AI Act, do not rely on the game. Consult the official legal text (as of 05.2026 available at https://artificialintelligenceact.eu/de/ai-act-explorer/) and ask an expert.
|
||||
|
||||
Please send comments and corrections regarding the content to hochschulkommunikation@uni-greifswald.de.
|
||||
|
||||
[b]Links to third-party websites[/b]
|
||||
References and links: In the case of direct or indirect references to external websites ("hyperlinks") that lie outside the university's area of responsibility, a liability obligation would arise only if the author knew of the content and it were technically possible and reasonable for them to prevent use in the case of unlawful content. The university hereby expressly declares that, at the time the links were set, no illegal content was identifiable on the pages to be linked. The university has no influence on the current or future design, the content or the authorship of the linked pages. It therefore expressly dissociates itself from all content of all linked pages that was changed after the link was set. This statement applies to all links and references set within the university's own online offering as well as to third-party entries in guest books, discussion forums, link directories, mailing lists and all other forms of databases set up by the university to whose content external write access is possible. The provider of the page referred to is solely liable for illegal, incorrect or incomplete content and in particular for damage arising from the use or non-use of information presented in this way, not the party who merely refers to the respective publication via links.
|
||||
|
||||
[b]Copyright[/b]
|
||||
The game made available here is freely available under the GNU GPLv3 license and may be downloaded, modified and developed further in accordance with the license.
|
||||
|
||||
[b]Music[/b]
|
||||
Music comes from: https://opengameart.org/. Credits go, among others, to Peachtea@You're Perfect Studio (intro), syncopika (in-game music) and Metaruka (space).
|
||||
Sound effects by Juhani Junkala.
|
||||
|
||||
Please also note the legal notice of the University of Greifswald.
|
||||
@@ -1,12 +1,15 @@
|
||||
extends RichTextLabel
|
||||
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
_update_head_text()
|
||||
|
||||
|
||||
func _notification(what: int) -> void:
|
||||
if what == NOTIFICATION_TRANSLATION_CHANGED:
|
||||
_update_head_text()
|
||||
|
||||
|
||||
func _update_head_text() -> void:
|
||||
var scene_name = get_tree().current_scene.name
|
||||
text = "/" + scene_name + "/"
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta: float) -> void:
|
||||
pass
|
||||
text = "/" + tr(String(scene_name)) + "/"
|
||||
@@ -8,7 +8,7 @@ var _pending_user_text := ""
|
||||
var _chat_history: Array[Dictionary] = []
|
||||
var _saved_state_blob := PackedByteArray()
|
||||
|
||||
const DEFAULT_SYSTEM_PROMPT := "Antworte auf Deutsch. Antworte kurz und präzise in 1-2 Sätzen nur basierend auf dem bereitgestellten Dokument. Wenn die Antwort nicht im Dokument steht, antworte nur mit: 'Darauf kann ich nicht antworten, bitte stelle mir eine Frage zum EU AI Act'."
|
||||
const DEFAULT_SYSTEM_PROMPT := "CHATBOT_SYSTEM_PROMPT"
|
||||
const DEFAULT_MAX_HISTORY_TURNS := 0
|
||||
|
||||
|
||||
@@ -46,6 +46,8 @@ func _ready() -> void:
|
||||
_generate_button.pressed.connect(_on_generate_pressed)
|
||||
_close_button.pressed.connect(_on_close_pressed)
|
||||
_prompt_edit.connect("input_event", _on_prompt_edit_gui_input)
|
||||
for i in range(option_button.item_count):
|
||||
option_button.set_item_text(i, tr(option_button.get_item_text(i)))
|
||||
_llama = GodotLlama.new()
|
||||
_llama.context.token_generated.connect(_on_token_generated)
|
||||
_llama.context.generation_finished.connect(_on_generation_finished)
|
||||
@@ -225,7 +227,7 @@ func _load_txt(path: String) -> String:
|
||||
|
||||
func _build_chat_prompt(user_text: String) -> String:
|
||||
var parts := PackedStringArray()
|
||||
var clean_system := DEFAULT_SYSTEM_PROMPT.strip_edges()
|
||||
var clean_system := tr(DEFAULT_SYSTEM_PROMPT).strip_edges()
|
||||
|
||||
# Llama 3 Header
|
||||
parts.append("<|begin_of_text|>")
|
||||
|
||||
@@ -116,7 +116,7 @@ offset_top = 950.0
|
||||
offset_right = 1930.0
|
||||
offset_bottom = 1050.0
|
||||
theme_override_font_sizes/normal_font_size = 27
|
||||
text = "Bitte beachten: Sie sprechen mit einer künstlichen Intelligenz. Verlassen Sie sich nie auf die Antworten."
|
||||
text = "CHATBOT_DISCLAIMER"
|
||||
fit_content = true
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||
@@ -189,12 +189,12 @@ texture = ExtResource("2_ujr2t")
|
||||
[node name="Title" type="Label" parent="MarginContainer/Scroll/VBox/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 30
|
||||
text = "Frag mich etwas zum EU AI Act und ich versuche es dir zu beantworten! "
|
||||
text = "CHATBOT_INTRO"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="Label" type="Label" parent="MarginContainer/Scroll/VBox"]
|
||||
layout_mode = 2
|
||||
text = "Wähle ein Kapitel des EU AI Acts, zu dem du eine Frage hast:"
|
||||
text = "CHATBOT_CHOOSE_CHAPTER"
|
||||
|
||||
[node name="OptionButton" type="OptionButton" parent="MarginContainer/Scroll/VBox"]
|
||||
layout_mode = 2
|
||||
@@ -202,48 +202,48 @@ size_flags_horizontal = 0
|
||||
selected = 0
|
||||
allow_reselect = true
|
||||
item_count = 16
|
||||
popup/item_0/text = "Kapitelübersicht und Kurzfassung"
|
||||
popup/item_0/text = "CHATBOT_CH0"
|
||||
popup/item_0/id = 0
|
||||
popup/item_1/text = "Erwägungsgründe"
|
||||
popup/item_1/text = "CHATBOT_CH1"
|
||||
popup/item_1/id = 1
|
||||
popup/item_2/text = "Kapitel 1 - Allgemeine Bestimmungen"
|
||||
popup/item_2/text = "CHATBOT_CH2"
|
||||
popup/item_2/id = 2
|
||||
popup/item_3/text = "Kapitel 2 - Verbotene Praktiken im KI-Bereich"
|
||||
popup/item_3/text = "CHATBOT_CH3"
|
||||
popup/item_3/id = 3
|
||||
popup/item_4/text = "Kapitel 3 - Hochrisiko-KI-Systeme"
|
||||
popup/item_4/text = "CHATBOT_CH4"
|
||||
popup/item_4/id = 4
|
||||
popup/item_5/text = "Kapitel 4 - Transparenzpflichten für Anbieter und Betreiber bestimmter KI-Systeme"
|
||||
popup/item_5/text = "CHATBOT_CH5"
|
||||
popup/item_5/id = 5
|
||||
popup/item_6/text = "Kapitel 5 - KI-Modelle mit allgemeinem Verwendungszweck"
|
||||
popup/item_6/text = "CHATBOT_CH6"
|
||||
popup/item_6/id = 6
|
||||
popup/item_7/text = "Kapitel 6 - Massnahmen zur Innovationsförderung"
|
||||
popup/item_7/text = "CHATBOT_CH7"
|
||||
popup/item_7/id = 7
|
||||
popup/item_8/text = "Kapitel 7 - Governance"
|
||||
popup/item_8/text = "CHATBOT_CH8"
|
||||
popup/item_8/id = 8
|
||||
popup/item_9/text = "Kapitel 8 - EU-Datenbank für Hochrisiko-KI-Systeme"
|
||||
popup/item_9/text = "CHATBOT_CH9"
|
||||
popup/item_9/id = 9
|
||||
popup/item_10/text = "Kapitel 9 - Beobachtung nach dem Inverkehrbringen, Informationsaustausch und Marktüberwachung"
|
||||
popup/item_10/text = "CHATBOT_CH10"
|
||||
popup/item_10/id = 10
|
||||
popup/item_11/text = "Kapitel 10 - Verhaltenskodizes und Leitlinien"
|
||||
popup/item_11/text = "CHATBOT_CH11"
|
||||
popup/item_11/id = 11
|
||||
popup/item_12/text = "Kapitel 11 - Befugnisübertragung und Ausschussverfahren"
|
||||
popup/item_12/text = "CHATBOT_CH12"
|
||||
popup/item_12/id = 12
|
||||
popup/item_13/text = "Kapitel 12 - Sanktionen"
|
||||
popup/item_13/text = "CHATBOT_CH13"
|
||||
popup/item_13/id = 13
|
||||
popup/item_14/text = "Kapitel 13 - Schlussbestimmungen"
|
||||
popup/item_14/text = "CHATBOT_CH14"
|
||||
popup/item_14/id = 14
|
||||
popup/item_15/text = "Anhang"
|
||||
popup/item_15/text = "CHATBOT_CH15"
|
||||
popup/item_15/id = 15
|
||||
|
||||
[node name="PromptLabel" type="Label" parent="MarginContainer/Scroll/VBox"]
|
||||
layout_mode = 2
|
||||
text = "Frage:"
|
||||
text = "CHATBOT_QUESTION"
|
||||
|
||||
[node name="PromptEdit" type="TextEdit" parent="MarginContainer/Scroll/VBox"]
|
||||
custom_minimum_size = Vector2(0, 140)
|
||||
layout_mode = 2
|
||||
theme_override_styles/normal = SubResource("StyleBoxFlat_h7bxb")
|
||||
placeholder_text = "Schreib hier deine Frage..."
|
||||
placeholder_text = "CHATBOT_QUESTION_PLACEHOLDER"
|
||||
tab_input_mode = false
|
||||
|
||||
[node name="GenerateRow" type="HBoxContainer" parent="MarginContainer/Scroll/VBox"]
|
||||
@@ -257,7 +257,7 @@ text = "Enter"
|
||||
|
||||
[node name="OutputLabel" type="Label" parent="MarginContainer/Scroll/VBox"]
|
||||
layout_mode = 2
|
||||
text = "Antwort"
|
||||
text = "CHATBOT_ANSWER"
|
||||
|
||||
[node name="OutputText" type="RichTextLabel" parent="MarginContainer/Scroll/VBox"]
|
||||
custom_minimum_size = Vector2(0, 220)
|
||||
@@ -271,7 +271,7 @@ theme_override_constants/separation = 8
|
||||
[node name="CloseButton" type="Button" parent="MarginContainer/Scroll/VBox/GenerateRow2"]
|
||||
z_index = 999
|
||||
layout_mode = 2
|
||||
text = "Schließen"
|
||||
text = "CHATBOT_CLOSE"
|
||||
|
||||
[node name="StatusLabel" type="Label" parent="MarginContainer/Scroll/VBox"]
|
||||
layout_mode = 2
|
||||
|
||||
@@ -8,8 +8,10 @@ extends Control
|
||||
@onready var generate_button: Button = $MarginContainer/Scroll/VBox/GenerateRow/GenerateButton
|
||||
@onready var helper = $VBoxContainer/SubViewportContainer/SubViewport/base_node/helper
|
||||
|
||||
const API_URL := "" #TODO insert your url to the llm / api-gateway here
|
||||
|
||||
const API_URL := "https://apphubai.wolke.uni-greifswald.de/v1" #TODO insert your url to the llm / api-gateway here
|
||||
const API_TOKEN := ""
|
||||
const API_MODEL := "unsloth/gemma-4-31B-it-qat-GGUF:UD-Q4_K_XL"
|
||||
const MAX_RESPONSE_TOKENS := 200
|
||||
var document_id
|
||||
|
||||
signal closing_chatbot
|
||||
@@ -17,6 +19,7 @@ signal closing_chatbot
|
||||
|
||||
func _ready():
|
||||
_http.request_completed.connect(Callable(self, "_on_request_completed"))
|
||||
_http.timeout = 180.0
|
||||
document_id = option_button.selected
|
||||
helper.play_idle()
|
||||
|
||||
@@ -35,8 +38,6 @@ func _unhandled_input(event: InputEvent) -> void:
|
||||
|
||||
|
||||
func _on_generate_pressed() -> void:
|
||||
$VBoxContainer/SubViewportContainer/SubViewport/AnimationPlayer.play("walk_helper")
|
||||
helper.play_think_walk()
|
||||
var user_text := _prompt_edit.text.strip_edges()
|
||||
document_id = option_button.selected
|
||||
TextToSpeech._stop_dialogue()
|
||||
@@ -44,73 +45,84 @@ func _on_generate_pressed() -> void:
|
||||
print("Prompt ist leer")
|
||||
return
|
||||
|
||||
var document = _load_txt("res://addons/godot_llama/demo/documents/%s.md" % [document_id]).strip_edges()
|
||||
print(document_id)
|
||||
print(document)
|
||||
var combined_user_message := ""
|
||||
|
||||
var document := _load_txt("res://addons/godot_llama/demo/documents/%s.md" % [document_id]).strip_edges()
|
||||
var combined_user_message := user_text
|
||||
if not document.is_empty():
|
||||
combined_user_message = "Dokument:\n%s\n\nFrage: %s" % [document, user_text]
|
||||
else:
|
||||
combined_user_message = user_text
|
||||
|
||||
var body := {
|
||||
"question": combined_user_message
|
||||
"model": API_MODEL,
|
||||
"messages": [
|
||||
{"role": "system", "content": tr("CHATBOT_SYSTEM_PROMPT")},
|
||||
{"role": "user", "content": combined_user_message},
|
||||
],
|
||||
"max_tokens": MAX_RESPONSE_TOKENS,
|
||||
"temperature": 0.1,
|
||||
}
|
||||
|
||||
var headers = [
|
||||
var headers := PackedStringArray([
|
||||
"Content-Type: application/json",
|
||||
#"Authorization: Bearer %s" % API_TOKEN
|
||||
]
|
||||
|
||||
var json_body := JSON.stringify(body)
|
||||
|
||||
|
||||
var err = _http.request(
|
||||
API_URL,
|
||||
headers,
|
||||
HTTPClient.METHOD_POST,
|
||||
json_body
|
||||
)
|
||||
|
||||
"Authorization: Bearer %s" % API_TOKEN,
|
||||
])
|
||||
var endpoint := API_URL.trim_suffix("/") + "/chat/completions"
|
||||
var err := _http.request(endpoint, headers, HTTPClient.METHOD_POST, JSON.stringify(body))
|
||||
if err != OK:
|
||||
print("HTTP Fehler: ", err)
|
||||
_stop_helper_animation()
|
||||
output_text.text = _request_failed("HTTP %s" % error_string(err))
|
||||
generate_button.disabled = false
|
||||
return
|
||||
|
||||
$VBoxContainer/SubViewportContainer/SubViewport/AnimationPlayer.play("walk_helper")
|
||||
helper.play_think_walk()
|
||||
generate_button.disabled = true
|
||||
|
||||
func _on_request_completed(
|
||||
result: int,
|
||||
response_code: int,
|
||||
headers: PackedStringArray,
|
||||
_headers: PackedStringArray,
|
||||
body: PackedByteArray
|
||||
) -> void:
|
||||
$VBoxContainer/SubViewportContainer/SubViewport/AnimationPlayer.stop()
|
||||
helper.play_idle()
|
||||
_stop_helper_animation()
|
||||
generate_button.disabled = false
|
||||
var txt := body.get_string_from_utf8()
|
||||
|
||||
if result != HTTPRequest.RESULT_SUCCESS:
|
||||
output_text.text = _request_failed("result %s" % result)
|
||||
return
|
||||
if response_code != 200:
|
||||
output_text.text = _request_failed("HTTP %s" % response_code)
|
||||
push_warning("Chatbot HTTP %s: %s" % [response_code, txt.left(300)])
|
||||
return
|
||||
|
||||
var json = JSON.parse_string(txt)
|
||||
|
||||
if json == null:
|
||||
print("JSON Fehler")
|
||||
var response_text := _extract_reply(json)
|
||||
if response_text.is_empty():
|
||||
output_text.text = _request_failed("empty response")
|
||||
return
|
||||
|
||||
if json.has("content"):
|
||||
print('content:')
|
||||
print(json["content"])
|
||||
var response_text = json["content"]
|
||||
output_text.text = response_text
|
||||
output_text.text = response_text
|
||||
TextToSpeech._on_dialogue({"text": response_text})
|
||||
|
||||
if json.has("message"):
|
||||
print('message:')
|
||||
print(json["message"])
|
||||
var response_text = json["message"]["content"]
|
||||
output_text.text = response_text
|
||||
var line = {"text": output_text.text}
|
||||
TextToSpeech._on_dialogue(line)
|
||||
generate_button.disabled = false
|
||||
func _extract_reply(json) -> String:
|
||||
if typeof(json) != TYPE_DICTIONARY:
|
||||
return ""
|
||||
if json.has("choices") and json["choices"] is Array and not json["choices"].is_empty():
|
||||
var choice = json["choices"][0]
|
||||
if choice is Dictionary and choice.get("message") is Dictionary:
|
||||
return str(choice["message"].get("content", "")).strip_edges()
|
||||
if json.has("content"):
|
||||
return str(json["content"]).strip_edges()
|
||||
if json.get("message") is Dictionary:
|
||||
return str(json["message"].get("content", "")).strip_edges()
|
||||
return ""
|
||||
|
||||
func _request_failed(detail: String) -> String:
|
||||
if TranslationServer.get_locale().begins_with("en"):
|
||||
return "The request failed (%s)." % detail
|
||||
return "Die Anfrage ist fehlgeschlagen (%s)." % detail
|
||||
|
||||
func _stop_helper_animation() -> void:
|
||||
$VBoxContainer/SubViewportContainer/SubViewport/AnimationPlayer.stop()
|
||||
helper.play_idle()
|
||||
|
||||
func _load_txt(path: String) -> String:
|
||||
var file := FileAccess.open(path, FileAccess.READ)
|
||||
|
||||
@@ -4,12 +4,7 @@ extends Node3D
|
||||
var current_displayed_text : String = ""
|
||||
|
||||
func _ready() -> void:
|
||||
floating_text_component.set_text(
|
||||
"Seit dem ersten Star Wars Film hat sich die Erde ca. 50 mal um die Sonne gedreht und viel ist seitdem passiert.
|
||||
Intelligente Roboter wie R2D2 und C3PO sind keine ferne Science Fiction mehr und Künstliche Intelligenz ist in unserem Alltag angekommen. \n
|
||||
Die Europäische Union hat daher das weltweit erste Gesetz zur Regulierung von Künstlicher Intelligenz erlassen, den EU AI Act.\n
|
||||
Dieses Spiel soll Ihnen helfen grundlegende Kenntnisse zu Künstlicher Intelligenz und den Regelungen des EU AI Acts zu erlernen.
|
||||
Bitte beachten Sie, dass dieses Spiel nur als Einführung dienen kann, konkrete Fragen sind meist nicht allgemein zu beantworten und sollten von einer Fachperson eingeschätzt werden.")
|
||||
floating_text_component.set_text(tr("FLOAT_TEXT"))
|
||||
floating_text_component.emit_spawn_text.emit()
|
||||
await get_tree().create_timer(33.0).timeout
|
||||
$start_btn.visible = true
|
||||
|
||||
@@ -121,13 +121,13 @@ shape = SubResource("BoxShape3D_bs0kb")
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.481889, 0.5644746)
|
||||
modulate = Color(0, 0, 0, 1)
|
||||
outline_modulate = Color(1, 1, 1, 1)
|
||||
text = "Los geht's!"
|
||||
text = "START_GAME"
|
||||
font_size = 42
|
||||
outline_size = 3
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.846555, 3.2089822, -1.8559549)
|
||||
text = "normalen Text anzeigen"
|
||||
text = "CHANGE_FLOAT"
|
||||
font_size = 42
|
||||
|
||||
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=4 format=3 uid="uid://msxftb40b7ks"]
|
||||
[gd_scene load_steps=5 format=3 uid="uid://msxftb40b7ks"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://vbi6iri04xbh" path="res://ai_act_text.gd" id="1_fvpwc"]
|
||||
|
||||
@@ -6,8 +6,19 @@
|
||||
bg_color = Color(0, 0.2, 0.6, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_fvpwc"]
|
||||
content_margin_left = 12.0
|
||||
content_margin_top = 6.0
|
||||
content_margin_right = 12.0
|
||||
content_margin_bottom = 6.0
|
||||
bg_color = Color(1, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_finished_hover"]
|
||||
content_margin_left = 12.0
|
||||
content_margin_top = 6.0
|
||||
content_margin_right = 12.0
|
||||
content_margin_bottom = 6.0
|
||||
bg_color = Color(1, 0.85, 0.2, 1)
|
||||
|
||||
[node name="ai_act_text_static" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
@@ -30,14 +41,8 @@ theme_override_colors/font_color = Color(1, 0.8, 0, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 3
|
||||
theme_override_font_sizes/font_size = 58
|
||||
text = "Seit dem ersten Star Wars Film hat sich die Erde
|
||||
ca. 50 mal um die Sonne gedreht und viel ist passiert.
|
||||
Intelligente Roboter wie R2D2 und C3PO sind keine ferne Science Fiction mehr und Künstliche Intelligenz ist in unserem Alltag angekommen.
|
||||
Die Europäische Union hat daher das weltweit erste Gesetz zur Regulierung von Künstlicher Intelligenz erlassen, den EU AI Act.
|
||||
Dieses Spiel soll Ihnen helfen grundlegende Kenntnisse zu Künstlicher Intelligenz und den Regelungen des EU AI Acts zu erlernen.
|
||||
Bitte beachten Sie, dass dieses Spiel nur als Einführung dienen kann, konkrete Fragen sind meist nicht allgemein zu beantworten und sollten von einer Fachperson eingeschätzt werden."
|
||||
text = "FLOAT_TEXT"
|
||||
autowrap_mode = 2
|
||||
clip_text = true
|
||||
|
||||
[node name="Button" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
@@ -46,19 +51,22 @@ offset_top = 13.0
|
||||
offset_right = 1908.0
|
||||
offset_bottom = 66.0
|
||||
theme_override_font_sizes/font_size = 32
|
||||
text = "Fliegenden Text
|
||||
anzeigen"
|
||||
text = "CHANGE_STATIC"
|
||||
|
||||
[node name="Button2" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 1684.0
|
||||
offset_left = 1580.0
|
||||
offset_top = 999.0
|
||||
offset_right = 1907.0
|
||||
offset_right = 1910.0
|
||||
offset_bottom = 1052.0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/normal = SubResource("StyleBoxFlat_fvpwc")
|
||||
text = "Fertig gelesen"
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_finished_hover")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_fvpwc")
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_fvpwc")
|
||||
clip_text = false
|
||||
text = "TEXT_FINISHED"
|
||||
|
||||
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"]
|
||||
[connection signal="pressed" from="Button2" to="." method="_on_button_2_pressed"]
|
||||
|
Before Width: | Height: | Size: 140 KiB |
@@ -1,41 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dmehin8bsv6t4"
|
||||
path.s3tc="res://.godot/imported/spiel_ballon.png-7b74233f801940b7a2c37ec294e908a8.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon.png-7b74233f801940b7a2c37ec294e908a8.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
|
Before Width: | Height: | Size: 138 KiB |
@@ -1,41 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://fw6n01e1esjp"
|
||||
path.s3tc="res://.godot/imported/spiel_ballon2.png-52f28e182b33c934184341fdd77b2c4b.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon2.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon2.png-52f28e182b33c934184341fdd77b2c4b.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
|
Before Width: | Height: | Size: 157 KiB |
|
Before Width: | Height: | Size: 243 KiB |
@@ -1,40 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b20r8q4nfs730"
|
||||
path="res://.godot/imported/spiel_ballon_bot2.png-7042d6f6e2d805bfa516db7ead25bf96.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_bot2.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_bot2.png-7042d6f6e2d805bfa516db7ead25bf96.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
Before Width: | Height: | Size: 262 KiB |
|
After Width: | Height: | Size: 253 KiB |
@@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cm4rb6esfqle0"
|
||||
path="res://.godot/imported/spiel_ballon_bot.png-b91e7e91f12910e0bf97ec7a577b6434.ctex"
|
||||
uid="uid://bbgun8o622y1x"
|
||||
path="res://.godot/imported/spiel_ballon_bot_englisch.png-b4ddc87c9752fd192fb12264ec13ec6e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_bot.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_bot.png-b91e7e91f12910e0bf97ec7a577b6434.ctex"]
|
||||
source_file="res://assets/Images/spiel_ballon_bot_englisch.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_bot_englisch.png-b4ddc87c9752fd192fb12264ec13ec6e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
Before Width: | Height: | Size: 131 KiB |
|
Before Width: | Height: | Size: 232 KiB |
@@ -1,40 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cxkveqhihg7kl"
|
||||
path="res://.godot/imported/spiel_ballon_mail2.png-ffd9eca7e0879dfa959a541ac2cafe79.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_mail2.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_mail2.png-ffd9eca7e0879dfa959a541ac2cafe79.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
After Width: | Height: | Size: 235 KiB |
@@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bsf5yvmlqcg1g"
|
||||
path="res://.godot/imported/spiel_ballon_surveillance3.png-47a209166efc7bc0d4abc75885a14775.ctex"
|
||||
uid="uid://6dwol30vd626"
|
||||
path="res://.godot/imported/spiel_ballon_mail_englisch.png-9029e196d2452dec408be8127b88c732.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_surveillance3.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_surveillance3.png-47a209166efc7bc0d4abc75885a14775.ctex"]
|
||||
source_file="res://assets/Images/spiel_ballon_mail_englisch.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_mail_englisch.png-9029e196d2452dec408be8127b88c732.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
Before Width: | Height: | Size: 182 KiB |
@@ -1,40 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c2brlwiis5hqe"
|
||||
path="res://.godot/imported/spiel_ballon_mrt.png-222fd5a10a270e888342c2e251ef1498.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_mrt.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_mrt.png-222fd5a10a270e888342c2e251ef1498.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
Before Width: | Height: | Size: 285 KiB |
@@ -1,40 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cugpm2bwpm22v"
|
||||
path="res://.godot/imported/spiel_ballon_mrt2.png-749449397872616a97949b979b6c905e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_mrt2.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_mrt2.png-749449397872616a97949b979b6c905e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
After Width: | Height: | Size: 274 KiB |
@@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://rkv3piap6mlp"
|
||||
path="res://.godot/imported/spiel_ballon_mail.png-c9e935997a40cde136efec167a2f0f6f.ctex"
|
||||
uid="uid://d3a6io1gelme2"
|
||||
path="res://.godot/imported/spiel_ballon_mrt_englisch.png-9fa994bdc3343f0c8fa7f6c53212fa50.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_mail.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_mail.png-c9e935997a40cde136efec167a2f0f6f.ctex"]
|
||||
source_file="res://assets/Images/spiel_ballon_mrt_englisch.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_mrt_englisch.png-9fa994bdc3343f0c8fa7f6c53212fa50.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
After Width: | Height: | Size: 253 KiB |
@@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ds8uc06db7ftt"
|
||||
path="res://.godot/imported/spiel_ballon_bot3.png-c1fc9f9d6c5b9f05119ad57bd4130fa9.ctex"
|
||||
uid="uid://cq388o5pf0s3d"
|
||||
path="res://.godot/imported/spiel_ballon_recognition_englisch.png-8ae39a304a3675ee57839ac575fcbf4f.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_bot3.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_bot3.png-c1fc9f9d6c5b9f05119ad57bd4130fa9.ctex"]
|
||||
source_file="res://assets/Images/spiel_ballon_recognition_englisch.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_recognition_englisch.png-8ae39a304a3675ee57839ac575fcbf4f.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
Before Width: | Height: | Size: 130 KiB |
@@ -1,40 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://brcmkadaa3iby"
|
||||
path="res://.godot/imported/spiel_ballon_surveillance.png-a85e19531d876554bbf553b3e5c3736d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_surveillance.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_surveillance.png-a85e19531d876554bbf553b3e5c3736d.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
Before Width: | Height: | Size: 266 KiB |
|
Before Width: | Height: | Size: 251 KiB |
@@ -1,40 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cxagf1qeoccxh"
|
||||
path="res://.godot/imported/spiel_ballon_surveillance3a.png-0014c82f9aedb11d3ae4e28489af803c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_surveillance3a.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_surveillance3a.png-0014c82f9aedb11d3ae4e28489af803c.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
Before Width: | Height: | Size: 32 KiB |
@@ -1,40 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dcyoaa3vdsc8h"
|
||||
path="res://.godot/imported/spiel_ballon_text.png-dd8a24914d0ff18888e257ef364a5592.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/Images/spiel_ballon_text.png"
|
||||
dest_files=["res://.godot/imported/spiel_ballon_text.png-dd8a24914d0ff18888e257ef364a5592.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
@@ -1,10 +1,10 @@
|
||||
extends Control
|
||||
|
||||
var congrats_text_bottom = "Sie haben alle Aufgaben erfolgreich gemeistert und konnten zur Erde zurück kehren. \n Wir hoffen Sie konnten etwas über KI und den EU AI Act lernen."
|
||||
var congrats_text_bottom = tr("CONGRATS_TEXT")
|
||||
var jumped_back = false
|
||||
|
||||
func _ready() -> void:
|
||||
var congrats_text = "Herzlichen Glückwunsch " + Global.player_name + "!\n\n\n\n\n"
|
||||
var congrats_text = tr("CONGRATS_SHORT") + Global.player_name + "!\n\n\n\n\n"
|
||||
$Panel/Label.text = congrats_text
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE)
|
||||
$Panel/SubViewportContainer/SubViewport/astronaut/Armature/Skeleton3D/Cube_001.mesh = load(Global.mesh_resource_player)
|
||||
|
||||
@@ -710,12 +710,7 @@ theme_override_colors/font_color = Color(1, 1, 1, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 8
|
||||
theme_override_font_sizes/font_size = 74
|
||||
text = "Herzlichen Glückwunsch!
|
||||
|
||||
|
||||
|
||||
|
||||
"
|
||||
text = "CONGRATS_SHORT"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
autowrap_mode = 3
|
||||
@@ -728,9 +723,7 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_colors/font_outline_color = Color(1, 1, 1, 1)
|
||||
theme_override_constants/outline_size = 3
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Sie haben alle Aufgaben erfolgreich gemeistert und konnten zur Erde zurück kehren.
|
||||
Wir hoffen Sie konnten etwas über KI und den EU AI Act lernen.
|
||||
"
|
||||
text = "CONGRATS_TEXT"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
autowrap_mode = 3
|
||||
@@ -742,7 +735,7 @@ offset_top = 850.0
|
||||
offset_right = 1145.0
|
||||
offset_bottom = 916.0
|
||||
theme_override_font_sizes/font_size = 42
|
||||
text = "Nochmal spielen"
|
||||
text = "PLAY_AGAIN"
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
libraries = {
|
||||
|
||||
@@ -568,7 +568,7 @@ mesh = SubResource("SphereMesh_i6slr")
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="MeshInstance3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.67804193, 0.1867795)
|
||||
text = "Erde"
|
||||
text = "EARTH"
|
||||
font_size = 48
|
||||
outline_size = 16
|
||||
|
||||
|
||||
@@ -8,6 +8,23 @@ var PlayerSelection := 0
|
||||
var batteries := 0
|
||||
const mesh_resource_player := "user://player_anim.tres"
|
||||
var player_name = "Spieler1"
|
||||
const DEFAULT_PLAYER_NAMES: Array[String] = ["Spieler1", "Player1"]
|
||||
var chatbot_opened = false
|
||||
var balloon_collected = false
|
||||
var resource_balloon = ""
|
||||
var locale := ""
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
if locale.is_empty():
|
||||
var os_lang := OS.get_locale_language()
|
||||
locale = "de" if os_lang == "de" else "en"
|
||||
apply_locale(locale)
|
||||
|
||||
|
||||
func apply_locale(new_locale: String) -> void:
|
||||
var using_default_name := player_name.is_empty() or player_name in DEFAULT_PLAYER_NAMES or player_name == tr("Spieler1")
|
||||
locale = new_locale
|
||||
TranslationServer.set_locale(locale)
|
||||
if using_default_name:
|
||||
player_name = tr("Spieler1")
|
||||
@@ -553,6 +553,5 @@ theme_override_colors/font_color = Color(1, 1, 1, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 2
|
||||
theme_override_font_sizes/font_size = 21
|
||||
text = "[h] drücken für Hilfe
|
||||
[r] für Wechsel zwischen Kamera- und Wurfmodus"
|
||||
text = "HUD_HELP"
|
||||
horizontal_alignment = 2
|
||||
@@ -36,7 +36,7 @@ func _on_arrow_right_pressed() -> void:
|
||||
|
||||
func update_label() -> void:
|
||||
print(index_shown_battery)
|
||||
$Panel/BatteryLabel.text = batteries[index_shown_battery].battery_label
|
||||
$Panel/BatteryLabel.text = tr(batteries[index_shown_battery].battery_label)
|
||||
|
||||
|
||||
func _on_button_pressed() -> void:
|
||||
|
||||
@@ -48,7 +48,7 @@ transform = Transform3D(1, 0, 0, 0, 0.5844338, -0.81144136, 0, 0.81144136, 0.584
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 3)
|
||||
gravity_scale = 0.0
|
||||
freeze = true
|
||||
battery_label = "Chatbot"
|
||||
battery_label = "BATTERY_CHATBOT"
|
||||
image_path = "res://assets/Images/bot.jpg"
|
||||
|
||||
[node name="Battery2" parent="Panel/SubViewportContainer/SubViewport/batteries" instance=ExtResource("1_pohso")]
|
||||
@@ -56,7 +56,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0, -3)
|
||||
gravity_scale = 0.0
|
||||
freeze = true
|
||||
stored_power = 100
|
||||
battery_label = "biometrische Überwachung im öffentlichem Raum"
|
||||
battery_label = "BATTERY_BIOMETRIC"
|
||||
image_path = "res://assets/Images/surveillance.jpg"
|
||||
|
||||
[node name="Battery3" parent="Panel/SubViewportContainer/SubViewport/batteries" instance=ExtResource("1_pohso")]
|
||||
@@ -64,7 +64,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -3)
|
||||
gravity_scale = 0.0
|
||||
freeze = true
|
||||
stored_power = 25
|
||||
battery_label = "Spamfilter"
|
||||
battery_label = "BATTERY_SPAMFILTER"
|
||||
image_path = "res://assets/Images/mail.jpg"
|
||||
|
||||
[node name="Battery4" parent="Panel/SubViewportContainer/SubViewport/batteries" instance=ExtResource("1_pohso")]
|
||||
@@ -72,7 +72,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3, 0, -3)
|
||||
gravity_scale = 0.0
|
||||
freeze = true
|
||||
stored_power = 75
|
||||
battery_label = "Diagnose von Krankheiten auf MRT-Bildern"
|
||||
battery_label = "BATTERY_DIAGNOSIS"
|
||||
image_path = "res://assets/Images/mrt.jpg"
|
||||
|
||||
[node name="ArrowLeft" type="Button" parent="Panel"]
|
||||
@@ -116,7 +116,7 @@ offset_right = 1098.0
|
||||
offset_bottom = 157.0
|
||||
theme_override_constants/outline_size = 15
|
||||
theme_override_font_sizes/font_size = 64
|
||||
text = "Inventar"
|
||||
text = "INVENTORY_TITLE"
|
||||
|
||||
[node name="Button" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
@@ -125,7 +125,7 @@ offset_top = 840.0
|
||||
offset_right = 1079.0
|
||||
offset_bottom = 906.0
|
||||
theme_override_font_sizes/font_size = 42
|
||||
text = "Auswählen"
|
||||
text = "INVENTORY_SELECT"
|
||||
|
||||
[node name="Label" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
@@ -134,7 +134,7 @@ offset_top = 983.0
|
||||
offset_right = 1906.0
|
||||
offset_bottom = 1028.0
|
||||
theme_override_font_sizes/font_size = 32
|
||||
text = "[c] zum Schließen ohne etwas auszuwählen"
|
||||
text = "INVENTORY_CLOSE_HINT"
|
||||
|
||||
[connection signal="gui_input" from="." to="." method="_on_gui_input"]
|
||||
[connection signal="gui_input" from="Panel" to="." method="_on_panel_gui_input"]
|
||||
|
||||
@@ -36,4 +36,4 @@ func _on_wrong_button_toggled(toggled_on: bool) -> void:
|
||||
missing_btns = NR_CORRECT_BTNS - correct_buttons_pressed
|
||||
|
||||
func change_hint() -> void:
|
||||
$Panel/Panel/Label/missing.text = "[noch " + str(missing_btns) + "]"
|
||||
$Panel/Panel/Label/missing.text = tr("KEYPAD_MISSING") % str(missing_btns)
|
||||
@@ -75,7 +75,8 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_3c3sr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "Ausweis"
|
||||
text = "KEYPAD_ID"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button2" type="Button" parent="Panel/Panel/Buttons"]
|
||||
layout_mode = 0
|
||||
@@ -88,7 +89,8 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_3c3sr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "Foto"
|
||||
text = "KEYPAD_PHOTO"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button3" type="Button" parent="Panel/Panel/Buttons"]
|
||||
layout_mode = 0
|
||||
@@ -101,7 +103,8 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_3c3sr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "Wohnort"
|
||||
text = "KEYPAD_RESIDENCE"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button4" type="Button" parent="Panel/Panel/Buttons"]
|
||||
layout_mode = 0
|
||||
@@ -114,7 +117,7 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_updv8")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "Relativitätstheorie"
|
||||
text = "KEYPAD_RELATIVITY"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button5" type="Button" parent="Panel/Panel/Buttons"]
|
||||
@@ -128,7 +131,8 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_3c3sr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "Arbeit"
|
||||
text = "KEYPAD_WORK"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button6" type="Button" parent="Panel/Panel/Buttons"]
|
||||
layout_mode = 0
|
||||
@@ -141,7 +145,7 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_updv8")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "Aktienkurs"
|
||||
text = "KEYPAD_STOCK"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button7" type="Button" parent="Panel/Panel/Buttons"]
|
||||
@@ -155,7 +159,7 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_updv8")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "aktuelles Datum"
|
||||
text = "KEYPAD_DATE"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button8" type="Button" parent="Panel/Panel/Buttons"]
|
||||
@@ -169,7 +173,7 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_3c3sr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "Geburtstdatum"
|
||||
text = "KEYPAD_BIRTHDATE"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button9" type="Button" parent="Panel/Panel/Buttons"]
|
||||
@@ -183,7 +187,7 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_3c3sr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "IP-Adresse"
|
||||
text = "KEYPAD_IP"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button10" type="Button" parent="Panel/Panel/Buttons"]
|
||||
@@ -197,7 +201,7 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_3c3sr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "Personalausweisnummer"
|
||||
text = "KEYPAD_ID_NUMBER"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button11" type="Button" parent="Panel/Panel/Buttons"]
|
||||
@@ -211,7 +215,7 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_3c3sr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "politische Meinung"
|
||||
text = "KEYPAD_POLITICAL"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Button12" type="Button" parent="Panel/Panel/Buttons"]
|
||||
@@ -225,7 +229,7 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_w41gr")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_3c3sr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_8rcbr")
|
||||
toggle_mode = true
|
||||
text = "Religion"
|
||||
text = "KEYPAD_RELIGION"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="Label" type="Label" parent="Panel/Panel"]
|
||||
@@ -236,7 +240,7 @@ offset_right = 1040.0
|
||||
offset_bottom = 260.0
|
||||
theme_override_font_sizes/font_size = 42
|
||||
theme_override_styles/normal = SubResource("StyleBoxFlat_4swqm")
|
||||
text = "Wählen Sie aus den untenstehenden Optionen diejenigen aus, die persönliche Daten enthalten."
|
||||
text = "KEYPAD_INSTRUCTION"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
autowrap_mode = 3
|
||||
@@ -249,7 +253,7 @@ offset_top = 178.0
|
||||
offset_right = 1047.0
|
||||
offset_bottom = 208.0
|
||||
theme_override_font_sizes/font_size = 21
|
||||
text = "[noch x]"
|
||||
text = "KEYPAD_MISSING"
|
||||
|
||||
[node name="Panel2" type="Panel" parent="Panel"]
|
||||
visible = false
|
||||
@@ -267,7 +271,7 @@ offset_bottom = 700.0
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 2
|
||||
theme_override_font_sizes/font_size = 62
|
||||
text = "Glückwunsch! Alles wurde richtig ausgewählt, die Aufgabe ist gelöst."
|
||||
text = "KEYPAD_SUCCESS"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
autowrap_mode = 3
|
||||
@@ -279,7 +283,7 @@ offset_top = 639.0
|
||||
offset_right = 1399.0
|
||||
offset_bottom = 692.0
|
||||
theme_override_font_sizes/font_size = 38
|
||||
text = "Sie dürfen nun zurück ins Raumschiff gehen."
|
||||
text = "KEYPAD_RETURN"
|
||||
|
||||
[connection signal="toggled" from="Panel/Panel/Buttons/Button" to="." method="_on_correct_button_toggled"]
|
||||
[connection signal="toggled" from="Panel/Panel/Buttons/Button2" to="." method="_on_correct_button_toggled"]
|
||||
|
||||
@@ -173,7 +173,9 @@ Screenshot={
|
||||
|
||||
[internationalization]
|
||||
|
||||
locale/translations=PackedStringArray("res://translations/en_de_translation.de.translation", "res://translations/en_de_translation.en.translation", "res://translations/en.po")
|
||||
locale/translations_pot_files=PackedStringArray("res://Interact/dialogue/simple_dialogue.dialogue", "res://Interact/dialogue/contact_info.dialogue", "res://Interact/dialogue/intro.dialogue", "res://Interact/dialogue/ai_v1.dialogue", "res://Interact/dialogue/ai_v4.dialogue", "res://Interact/dialogue/ai_v3.dialogue", "res://Interact/dialogue/ai_v2.dialogue", "res://Interact/dialogue/explain_ordering_game.dialogue", "res://Interact/dialogue/ai_v5.dialogue", "res://Interact/dialogue/helper_intro.dialogue", "res://Interact/dialogue/helper.dialogue", "res://Interact/dialogue/keypad.dialogue", "res://Interact/dialogue/albatross.dialogue", "res://Interact/dialogue/quiz_explainer.dialogue")
|
||||
locale/fallback="de"
|
||||
|
||||
[layer_names]
|
||||
|
||||
|
||||
@@ -28,10 +28,16 @@ func openLinkinBrowser(link):
|
||||
OS.shell_open(link)
|
||||
|
||||
func openAIActinBrowser():
|
||||
openLinkinBrowser("https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32024R1689")
|
||||
if TranslationServer.get_locale().begins_with("en"):
|
||||
openLinkinBrowser("https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32024R1689")
|
||||
else:
|
||||
openLinkinBrowser("https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32024R1689")
|
||||
|
||||
func openDSGVOinBrowser():
|
||||
openLinkinBrowser("https://dsgvo-gesetz.de/")
|
||||
if TranslationServer.get_locale().begins_with("en"):
|
||||
openLinkinBrowser("https://gdpr-info.eu/")
|
||||
else:
|
||||
openLinkinBrowser("https://dsgvo-gesetz.de/")
|
||||
|
||||
|
||||
func _on_player_chatbot_opened() -> void:
|
||||
|
||||
@@ -253,30 +253,30 @@ shape = SubResource("BoxShape3D_p60ki")
|
||||
|
||||
[node name="quiz_module" parent="." instance=ExtResource("1_k7kv1")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -17.726673)
|
||||
question = "Ist der EU AI Act wichtig?"
|
||||
question = "QUIZ1_Q"
|
||||
correct = 1
|
||||
answer_0 = "Nein."
|
||||
answer_1 = "Ja, denn er ist das weltweit erste Gesetz zur Regulierung von KI."
|
||||
answer_2 = "Nein, KI ist super und unbedenklich."
|
||||
answer_3 = "Mir egal."
|
||||
answer_0 = "QUIZ1_A0"
|
||||
answer_1 = "QUIZ1_A1"
|
||||
answer_2 = "QUIZ1_A2"
|
||||
answer_3 = "QUIZ1_A3"
|
||||
|
||||
[node name="quiz_module2" parent="." instance=ExtResource("1_k7kv1")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -31.685097)
|
||||
question = "Stellen Sie sich vor, Sie wollen ein Sprachmodell nutzen um Entwürfe für offizielle Schreiben der Universität zu erstellen. Was ist im Hinblick auf den AI Act dabei zu beachten?"
|
||||
question = "QUIZ2_Q"
|
||||
correct = 3
|
||||
answer_0 = "Die Verwendung eines LLM ist verboten, da es sich um eine nicht autorisierte Software handelt. "
|
||||
answer_1 = "Die Verwendung des LLM spart Zeit und ist daher unbedenklich."
|
||||
answer_2 = "Es ist irrelevant, wie die Entwürfe entstanden sind, solange das Ergebnis professionell aussieht."
|
||||
answer_3 = "Der Inhalt der Entwürfe muss sorgfältig geprüft werden, um sicherzustellen, dass er korrekt, vollständig und nicht irreführend ist. Zudem kann ich ein lokal betriebens LLM an der Uni Greifswald nutzen werden und so verhindern, dass Firmen wie Google oder Apple Informationen über meine Arbeit und meine Person erhalten. "
|
||||
answer_0 = "QUIZ2_A0"
|
||||
answer_1 = "QUIZ2_A1"
|
||||
answer_2 = "QUIZ2_A2"
|
||||
answer_3 = "QUIZ2_A3"
|
||||
|
||||
[node name="quiz_module3" parent="." instance=ExtResource("1_k7kv1")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -45.584503)
|
||||
question = "Ein Mitarbeiter möchte ein Sprachmodel nutzen, um eine Zusammenfassung von Feedback-Antworten zu einer Vorlesung von Studierenden zu erstellen. Die Antworten enthalten Namen, Matrikelnummern und persönliche Meinungen, außerdem den Name der Vorlesung und der Universität. Was sollte der Mitarbeiter unbedingt tun? "
|
||||
question = "QUIZ3_Q"
|
||||
correct = 2
|
||||
answer_0 = "Die vollständigen Antworten direkt in das Sprachmodell eingeben, um eine möglichst vollständige Analyse zu erhalten."
|
||||
answer_1 = "Die Antworten zunächst in ein anonymisiertes Format überführen, bevor sie dem LLM zugeführt werden. Der Name der Universität und der Vorlesung muss nicht anonymisiert werden, weil es 2 Vorlesungen zum selben Thema gibt."
|
||||
answer_2 = "Die Antworten sind zunächst in ein anonymisiertes Format zu überführen, bevor sie dem Sprachmodell zugeführt werden. Auch der Name der Universität und der Vorlesung muss anonymisiert werden, denn daraus kann auf Teilnehmende oder Lehrende geschlossen werden."
|
||||
answer_3 = "Die Namen und Matrikelnummern manuell aus den Antworten entfernen, bevor sie dem Sprachmodell zugeführt werden."
|
||||
answer_0 = "QUIZ3_A0"
|
||||
answer_1 = "QUIZ3_A1"
|
||||
answer_2 = "QUIZ3_A2"
|
||||
answer_3 = "QUIZ3_A3"
|
||||
|
||||
[node name="PressureBlock" parent="." instance=ExtResource("4_ngcn3")]
|
||||
transform = Transform3D(5, 0, 0, 0, 5, 0, 0, 0, 5, 0, -0.34563518, -54.785778)
|
||||
|
||||
@@ -51,7 +51,7 @@ func _ready() -> void:
|
||||
|
||||
func set_question() -> void:
|
||||
# Set texts
|
||||
var full_question_text = question + "\na) "+answer_0+ "\nb) "+answer_1+ "\nc) "+answer_2+ "\nd) "+answer_3 + "\n"
|
||||
var full_question_text = tr(question) + "\na) "+tr(answer_0)+ "\nb) "+tr(answer_1)+ "\nc) "+tr(answer_2)+ "\nd) "+tr(answer_3) + "\n"
|
||||
question_label.text = full_question_text
|
||||
question_panel.visible = true
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@ extends Control
|
||||
$Panel/SubViewportContainer/SubViewport/Players/Player3/MeshInstance3D]
|
||||
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
$AnimationPlayer.play("turning")
|
||||
|
||||
|
||||
func selected_via_click(chosen_player: int) -> void:
|
||||
player_panel_array[Global.PlayerSelection].get_theme_stylebox('panel').border_color = Color('cccccc')
|
||||
players_turning[Global.PlayerSelection].visible = false
|
||||
@@ -28,6 +28,13 @@ func _on_button_2_pressed() -> void:
|
||||
func _on_button_3_pressed() -> void:
|
||||
selected_via_click(2)
|
||||
|
||||
func _change_language() -> void:
|
||||
if Global.locale == "de":
|
||||
Global.apply_locale("en")
|
||||
else:
|
||||
Global.apply_locale("de")
|
||||
|
||||
|
||||
func _on_start_pressed() -> void:
|
||||
var mesh = players_turning[Global.PlayerSelection].mesh.duplicate()
|
||||
|
||||
@@ -46,19 +53,29 @@ func _on_line_edit_text_changed(new_text: String) -> void:
|
||||
|
||||
func _on_impressum_pressed() -> void:
|
||||
$Panel2.visible = true
|
||||
$Panel2/Label.text = load_text_file('res://Resources/documents/impressum.txt')
|
||||
$Panel2/Label.text = load_localized_document("impressum")
|
||||
|
||||
|
||||
func _on_datenschutz_pressed() -> void:
|
||||
$Panel2.visible = true
|
||||
$Panel2/Label.text = load_text_file('res://Resources/documents/datenschutz.txt')
|
||||
$Panel2/Label.text = load_localized_document("datenschutz")
|
||||
|
||||
|
||||
func _on_button_pressed() -> void:
|
||||
$Panel2.visible = false
|
||||
|
||||
|
||||
func load_text_file(path: String):
|
||||
func load_localized_document(base_name: String) -> String:
|
||||
var locale := TranslationServer.get_locale().substr(0, 2)
|
||||
var localized_path := "res://Resources/documents/%s_%s.txt" % [base_name, locale]
|
||||
var fallback_path := "res://Resources/documents/%s.txt" % base_name
|
||||
if FileAccess.file_exists(localized_path):
|
||||
return load_text_file(localized_path)
|
||||
return load_text_file(fallback_path)
|
||||
|
||||
|
||||
func load_text_file(path: String) -> String:
|
||||
var file = FileAccess.open(path, FileAccess.READ)
|
||||
var content = file.get_as_text()
|
||||
return content
|
||||
if file == null:
|
||||
return ""
|
||||
return file.get_as_text()
|
||||
@@ -23,7 +23,8 @@ draw_center = false
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_46sda"]
|
||||
bg_color = Color(0.578181, 0.264114, 0.329346, 1)
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_ed5hy"]
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_xfn3p"]
|
||||
bg_color = Color(0.5764706, 0.2627451, 0.32941177, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_5yj1t"]
|
||||
draw_center = false
|
||||
@@ -123,7 +124,7 @@ offset_bottom = 950.0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 48
|
||||
theme_override_styles/normal = SubResource("StyleBoxFlat_d4505")
|
||||
text = "Start"
|
||||
text = "START"
|
||||
|
||||
[node name="Panel" type="Panel" parent="."]
|
||||
layout_mode = 0
|
||||
@@ -138,7 +139,7 @@ theme_override_styles/panel = SubResource("StyleBoxFlat_efoot")
|
||||
layout_mode = 0
|
||||
offset_left = -20.8333
|
||||
offset_top = -70.0
|
||||
offset_right = 253.0
|
||||
offset_right = 253.00002
|
||||
offset_bottom = -3.0
|
||||
theme_override_font_sizes/font_size = 48
|
||||
theme_override_styles/normal = SubResource("StyleBoxFlat_46sda")
|
||||
@@ -149,9 +150,11 @@ layout_mode = 0
|
||||
offset_right = 274.167
|
||||
offset_bottom = 67.0
|
||||
theme_override_font_sizes/font_size = 40
|
||||
theme_override_styles/normal = SubResource("StyleBoxEmpty_ed5hy")
|
||||
placeholder_text = "Name wählen..."
|
||||
theme_override_styles/normal = SubResource("StyleBoxFlat_xfn3p")
|
||||
placeholder_text = "NAME_PLACEHOLDER"
|
||||
alignment = 1
|
||||
max_length = 15
|
||||
expand_to_text_length = true
|
||||
caret_blink = true
|
||||
|
||||
[node name="SubViewportContainer" type="SubViewportContainer" parent="Panel"]
|
||||
@@ -386,7 +389,7 @@ offset_right = 624.0
|
||||
offset_bottom = 459.0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Vorlage wählen"
|
||||
text = "CHOOSE_TEMPLATE"
|
||||
|
||||
[node name="Label2" type="Label" parent="Control"]
|
||||
layout_mode = 0
|
||||
@@ -396,7 +399,7 @@ offset_right = 1412.0
|
||||
offset_bottom = 798.0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 36
|
||||
text = "(optional: Farben personalisieren)"
|
||||
text = "OPTIONAL_COLORS"
|
||||
|
||||
[node name="Signet2018RgbGross" type="Sprite2D" parent="."]
|
||||
position = Vector2(963, 89)
|
||||
@@ -419,14 +422,16 @@ texture = ExtResource("9_kvwfe")
|
||||
|
||||
[node name="title" type="RichTextLabel" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 620.0
|
||||
offset_left = 4.0
|
||||
offset_top = 193.0
|
||||
offset_right = 1420.0
|
||||
offset_right = 1917.0
|
||||
offset_bottom = 293.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 3
|
||||
theme_override_font_sizes/normal_font_size = 58
|
||||
text = "Spielerisches AI Act Training"
|
||||
bbcode_enabled = true
|
||||
text = "GAME_TITLE"
|
||||
fit_content = true
|
||||
|
||||
[node name="welcome" type="RichTextLabel" parent="."]
|
||||
layout_mode = 0
|
||||
@@ -436,7 +441,9 @@ offset_right = 1730.0
|
||||
offset_bottom = 331.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/normal_font_size = 32
|
||||
text = "Herzlich Willkommen! Suchen Sie sich Ihre Spielfigur aus und lernen Sie den EU AI Act kennen."
|
||||
bbcode_enabled = true
|
||||
text = "WELCOME_TEXT"
|
||||
fit_content = true
|
||||
|
||||
[node name="copyright" type="RichTextLabel" parent="."]
|
||||
layout_mode = 0
|
||||
@@ -445,8 +452,15 @@ offset_top = 1002.0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 1052.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Verfügbar unter Lizenz GNU GPLv3
|
||||
https://git.uni-greifswald.de/GAIM/gaim"
|
||||
text = "LICENSE_TEXT"
|
||||
|
||||
[node name="language" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 1552.0
|
||||
offset_top = 1017.0
|
||||
offset_right = 1609.0
|
||||
offset_bottom = 1048.0
|
||||
text = "DE/EN"
|
||||
|
||||
[node name="impressum" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
@@ -454,7 +468,7 @@ offset_left = 1614.0
|
||||
offset_top = 1017.0
|
||||
offset_right = 1714.0
|
||||
offset_bottom = 1048.0
|
||||
text = "Impressum"
|
||||
text = "IMPRESSUM"
|
||||
|
||||
[node name="datenschutz" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
@@ -462,7 +476,7 @@ offset_left = 1719.0
|
||||
offset_top = 1017.0
|
||||
offset_right = 1917.0
|
||||
offset_bottom = 1048.0
|
||||
text = "Datenschutzinformation"
|
||||
text = "PRIVACY"
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
libraries = {
|
||||
@@ -481,7 +495,7 @@ layout_mode = 0
|
||||
offset_left = -8.0
|
||||
offset_top = -298.0
|
||||
offset_right = 290.0
|
||||
offset_bottom = 309.0
|
||||
offset_bottom = 282.0
|
||||
scale = Vector2(0.9, 0.9)
|
||||
picker_shape = 2
|
||||
sampler_visible = false
|
||||
@@ -500,7 +514,7 @@ offset_bottom = 76.0
|
||||
scale = Vector2(0.9, 0.9)
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 42
|
||||
text = "Farbe Anzug"
|
||||
text = "COLOR_SUIT"
|
||||
|
||||
[node name="Control3" type="Control" parent="."]
|
||||
anchors_preset = 0
|
||||
@@ -515,7 +529,7 @@ layout_mode = 0
|
||||
offset_left = 10.0
|
||||
offset_top = -290.0
|
||||
offset_right = 308.0
|
||||
offset_bottom = 317.0
|
||||
offset_bottom = 288.88892
|
||||
picker_shape = 2
|
||||
sampler_visible = false
|
||||
color_modes_visible = false
|
||||
@@ -532,7 +546,7 @@ offset_right = 314.0
|
||||
offset_bottom = 115.889
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 42
|
||||
text = "Farbe Details"
|
||||
text = "COLOR_DETAILS"
|
||||
|
||||
[node name="Panel2" type="Panel" parent="."]
|
||||
visible = false
|
||||
@@ -572,6 +586,7 @@ autoplay = true
|
||||
[connection signal="pressed" from="Control/Panel4/Button1" to="." method="_on_button_1_pressed"]
|
||||
[connection signal="pressed" from="Control/Panel2/Button2" to="." method="_on_button_2_pressed"]
|
||||
[connection signal="pressed" from="Control/Panel3/Button3" to="." method="_on_button_3_pressed"]
|
||||
[connection signal="pressed" from="language" to="." method="_change_language"]
|
||||
[connection signal="pressed" from="impressum" to="." method="_on_impressum_pressed"]
|
||||
[connection signal="pressed" from="datenschutz" to="." method="_on_datenschutz_pressed"]
|
||||
[connection signal="color_changed" from="Control2/ColorPicker" to="Panel/SubViewportContainer/SubViewport/Players/Player1/MeshInstance3D" method="_on_color_picker_color_changed"]
|
||||
|
||||
@@ -925,7 +925,7 @@ offset_bottom = 949.9867
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 48
|
||||
theme_override_styles/normal = SubResource("StyleBoxFlat_d4505")
|
||||
text = "Start"
|
||||
text = "START"
|
||||
|
||||
[node name="Panel" type="Panel" parent="."]
|
||||
layout_mode = 0
|
||||
@@ -952,7 +952,7 @@ offset_right = 258.0
|
||||
offset_bottom = 67.0
|
||||
theme_override_font_sizes/font_size = 42
|
||||
theme_override_styles/normal = SubResource("StyleBoxEmpty_ed5hy")
|
||||
placeholder_text = "Name"
|
||||
placeholder_text = "NAME_PLACEHOLDER"
|
||||
alignment = 1
|
||||
editable = false
|
||||
caret_blink = true
|
||||
@@ -1000,17 +1000,7 @@ offset_right = 624.0
|
||||
offset_bottom = 459.0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Vorlage wählen"
|
||||
|
||||
[node name="Label2" type="Label" parent="Vorlagen"]
|
||||
layout_mode = 0
|
||||
offset_left = 701.0
|
||||
offset_top = 401.0
|
||||
offset_right = 907.0
|
||||
offset_bottom = 468.0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 36
|
||||
text = "oder"
|
||||
text = "CHOOSE_TEMPLATE"
|
||||
|
||||
[node name="Panel4" type="Panel" parent="Vorlagen"]
|
||||
layout_mode = 0
|
||||
@@ -1212,14 +1202,16 @@ texture = ExtResource("6_rbr0u")
|
||||
|
||||
[node name="title" type="RichTextLabel" parent="Header"]
|
||||
layout_mode = 0
|
||||
offset_left = 650.0
|
||||
offset_left = 4.0
|
||||
offset_top = 193.0
|
||||
offset_right = 1270.0
|
||||
offset_right = 1917.0
|
||||
offset_bottom = 293.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 3
|
||||
theme_override_font_sizes/normal_font_size = 58
|
||||
text = "AI Act Explorer GAME"
|
||||
bbcode_enabled = true
|
||||
text = "GAME_TITLE"
|
||||
fit_content = true
|
||||
|
||||
[node name="welcome" type="RichTextLabel" parent="Header"]
|
||||
layout_mode = 0
|
||||
@@ -1229,7 +1221,9 @@ offset_right = 1730.0
|
||||
offset_bottom = 331.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/normal_font_size = 32
|
||||
text = "Herzlich Willkommen! Suchen Sie sich Ihre Spielfigur aus und lernen sie den EU AI Act kennen"
|
||||
bbcode_enabled = true
|
||||
text = "WELCOME_TEXT"
|
||||
fit_content = true
|
||||
|
||||
[node name="Foot" type="Control" parent="."]
|
||||
anchors_preset = 0
|
||||
@@ -1245,7 +1239,7 @@ offset_top = 561.0
|
||||
offset_right = 289.0
|
||||
offset_bottom = 586.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "copyright Universität Greifswald (übernehmen keine Haftung)"
|
||||
text = "COPYRIGHT_UNI"
|
||||
|
||||
[node name="description" type="RichTextLabel" parent="Foot"]
|
||||
layout_mode = 0
|
||||
@@ -1255,7 +1249,7 @@ offset_right = 1689.0
|
||||
offset_bottom = 589.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/normal_font_size = 24
|
||||
text = "Ein Tool entwickelt von der Universität Greifswald zum spielerischen Verstehen / Entdecken des EU AI Acts"
|
||||
text = "TOOL_DESC"
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
libraries = {
|
||||
@@ -1302,7 +1296,7 @@ offset_right = 313.99994
|
||||
offset_bottom = 115.88888
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 42
|
||||
text = "Farbe Details"
|
||||
text = "COLOR_DETAILS"
|
||||
|
||||
[node name="Control2" type="Control" parent="ColorWheels"]
|
||||
anchors_preset = 0
|
||||
@@ -1335,7 +1329,7 @@ offset_bottom = 76.0
|
||||
scale = Vector2(0.9, 0.9)
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 42
|
||||
text = "Farbe Anzug"
|
||||
text = "COLOR_SUIT"
|
||||
|
||||
[node name="Panel" type="Panel" parent="ColorWheels"]
|
||||
layout_mode = 0
|
||||
@@ -1352,7 +1346,7 @@ offset_top = 11.0
|
||||
offset_right = 484.0
|
||||
offset_bottom = 77.0
|
||||
theme_override_font_sizes/font_size = 42
|
||||
text = "Farben personalisieren"
|
||||
text = "CUSTOMIZE_COLORS"
|
||||
|
||||
[node name="Shuttle" type="SubViewportContainer" parent="."]
|
||||
layout_mode = 0
|
||||
|
||||
@@ -0,0 +1,565 @@
|
||||
# LANGUAGE translation for AI-Training for the following files:
|
||||
# res://Interact/dialogue/simple_dialogue.dialogue
|
||||
# res://Interact/dialogue/contact_info.dialogue
|
||||
# res://Interact/dialogue/intro.dialogue
|
||||
# res://Interact/dialogue/ai_v1.dialogue
|
||||
# res://Interact/dialogue/ai_v4.dialogue
|
||||
# res://Interact/dialogue/ai_v3.dialogue
|
||||
# res://Interact/dialogue/ai_v2.dialogue
|
||||
# res://Interact/dialogue/explain_ordering_game.dialogue
|
||||
# res://Interact/dialogue/ai_v5.dialogue
|
||||
# res://Interact/dialogue/helper_intro.dialogue
|
||||
# res://Interact/dialogue/helper.dialogue
|
||||
# res://Interact/dialogue/keypad.dialogue
|
||||
# res://Interact/dialogue/albatross.dialogue
|
||||
# res://Interact/dialogue/quiz_explainer.dialogue
|
||||
#
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: AI-Training\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8-bit\n"
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Nathan"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "[[Hi|Hello|Howdy]], this is some dialogue."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "Here are some choices."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "You picked the first one."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "First one"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "You picked the second one."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "Second one"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "Start again"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "End the conversation"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "For more information see the online documentation."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Hallo. Ich bin Datenschutzbeauftragter. Ich würde gerne ein paar Infos geben."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Wozu soll ich etwas erzählen"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Wenn Sie etwas sehen /etwas melden wollen, bezogen auf folgenden [url=https://artificialintelligenceact.eu/de/recital/172/]Artikel[/url] bzw. [url=https://eur-lex.europa.eu/eli/dir/2019/1937/oj?locale=de]Richtlinie[/url]"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Verstöße melden / Whistleblowing"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Link"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "aktuelle Gerichtsverfahren"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Kontaktinfo für weitere Fragen"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Nichts weiter, ich hab alles schon gehört"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Danke für Ihre Zeit. Viel Spaß beim weiteren Erkunden."
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Boss"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Hallo! Vielen Dank, dass du hier bist."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Deine Aufgabe ist es, den EU Ai Act besser zu verstehen."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Dafür senden wir dich auf den KI Planeten."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Dort wirst du lernen, was KI ist, in welchen Bereichen sie Anwendung findet, welche Einstufungen es gibt und vieles mehr."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Wenn du alle Aufgaben erledigt hast, kannst du zurück kommen."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Viel Spaß auf der Reise! Wir sehen uns danach wieder."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Starten der Reise"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Viel Spaß beim weiteren austesten der Steuerung. Wenn du bereit bist, klicke auf Button(?)/rede wieder mit mir."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Noch weiter hier bleiben"
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v1.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien001"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/ai_v1.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Ich finde es schwierig künstliche Intelligenz zu definieren. Die Menschen sind sich ja nichtmal einig was Intelligenz ist."
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v4.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien004"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/ai_v4.dialogue
|
||||
msgid "In der Stanford Enzyklopädie für Philosophie steht: Künstliche Intelligenz (KI) ist das Gebiet, das sich mit der Erschaffung künstlicher Tiere (oder zumindest künstlicher Lebewesen, die - in geeigneten Kontexten - wie Tiere erscheinen) und für viele auch künstlicher Personen (oder zumindest künstlicher Lebewesen, die - in geeigneten Kontexten - wie Personen erscheinen) befasst."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/ai_v4.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Ich glaube das heißt KI möchte Lebewesen erschaffen, die für Menschen nicht von natürlichen Lebewesen unterscheidbar sind."
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v3.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien003"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/ai_v3.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Modelle Künstlicher Intelligenz können komplexe Funktionen über sehr viele Parameter abbilden. Die Parameter werden aus Daten gelernt."
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v2.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien002"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/ai_v2.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Künstliche Intelligenz lernt aus großen Datenmengen. Die Ergebnisse sind nicht deterministisch, also es kommt nie genau das gleiche raus, wenn ich einen Algorithmus zweimal lernen lasse."
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Die vier Risikostufen"
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Minimales Risiko"
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Geringes Risiko"
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Hohes Risiko"
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Inakzeptables Risiko"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Der EU AI Act bewertet KI Systeme in vier Risikostufen, von minimalem bis zu inakzeptablem Risiko für Grundrechte und Sicherheit."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Je höher das Risiko, umso strenger die Regulierung. KI Systeme mit inakzeptablem Risiko sind verboten."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
msgid ""
|
||||
"In der folgenden Aufgabe geht es darum, die eben gesammelten Batterien zu ihren passenden Generatoren zuzuordnen. Dadurch wird das Raumschiff geladen und kann wieder starten. \n"
|
||||
"Die Batterien befinden sich im Inventar, welches sich mit [c] öffnen (und auch wieder schließen) lässt."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
msgid ""
|
||||
"Zum Zuordnen eine Batterie auswählen (über den Button) und anschließend zu den Generatoren transportieren und dort (mit [f]) wieder loslassen und einsetzen. \n"
|
||||
"Jeder Generator steht für eine der vier Risikostufen. \n"
|
||||
"Die Batterien bilden je ein KI-System ab."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "[speed=1]Lernen Sie nun die einzelnen Stufen genauer kennen. Eine der Stufen mit der Maus oder den Pfeiltasten auswählen und klicken/Enter/Leertaste drücken."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"Keine spezifischen Anforderungen. \n"
|
||||
"Ein Beispiel für diese Kategorie wäre ein Schachcomputer."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"Informationspflicht über die Benutzung der KI. \n"
|
||||
"Ein Beispiel für diese Kategorie wäre ein Programmierbot."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"Strenge Anforderungen an Transparenz, Dokumentation, Überwachung des Systems durch Menschen! \n"
|
||||
"Ein Beispiel für diese Kategorie wäre ein KI-System, dass automatisch Arbeiten von Studierenden oder Schülern/Schülerinnen bewertet."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"KI ist verboten! \n"
|
||||
"Ein Beispiel für diese Kategorie wäre der Einsatz eines KI-Systems, dass das Risiko, dass eine Person in Zukunft eine Straftat begeht, vorhersagt."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
msgid "Ich habe alles gelernt, beginne mit dem Spiel."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
msgid "[speed=-1]Lernen Sie nun die einzelnen Stufen genauer kennen. Eine der Stufen mit der Maus oder den Pfeiltasten auswählen und klicken/Enter/Leertaste drücken. Wenn Sie fertig sind, können Sie durch Wählen der untersten Option das Spiel fortsetzen."
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v5.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien005"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/ai_v5.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Die Stanford 100 year study of AI sagt: Künstliche Intelligenz ist die Tätigkeit, die darauf abzielt, Maschinen intelligent zu machen, und Intelligenz ist die Eigenschaft, die es einem Wesen ermöglicht, in seiner Umgebung angemessen und vorausschauend zu handeln."
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Helfer"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Hallo! Ich bin Ihr Helfer. Ich werde Sie ab jetzt auf Ihrer Reise auf diesem Planeten begleiten, und bei Fragen zu Verfügung stehen."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Ich kann helfen, wenn Fragen zum Spiel aufkommen, sei es zur genauen Steuerung oder was genau die aktuelle Aufgabe ist."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Ebenso habe ich den gesamten Text des EU AI Acts und der Datenschutzgrundverordnung zum Nachschlagen parat, zusätzlich können Sie eigene Fragen zu diesen Texten stellen, die ich dann versuchen werde zu beantworten."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Dazu einfach [h] drücken und die passende Option auswählen. Das geht jederzeit, solange gerade kein anderer Dialog offen ist."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Um zurück zum Raumschiff zu gelangen und dieses Starten zu können und im Anschluss zurück auf die Erde zu fliegen, müssen vier Aufgaben bewältigt werden. Jede wird vorher genau erklärt."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Oben stehen auch für die Dauer einer jeden Aufgabe nochmal Hinweise zur Steuerung bzw. was gerade gemacht werden soll."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Los geht's, laufen Sie einfach weiter und schon werden Sie zur ersten Aufgabe gelangen! Viel Erfolg und Vergnügen"
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid ""
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Zur Erinnerung"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "bisher gelerntes nochmal ansehen"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Fragen zum EU AI Act stellen"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Hilfe zum Spiel (Steuerung, aktuelle Aufabe, ...)"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "gesamter Text des EU AI Acts (öffnet Link im Browser)"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "gesamter Text der DSGVO (öffnet Link im Browser)"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Musik an/aus"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Schließen"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Alien-Dialoge wiederholen"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Mögliche Anwendungen von KI"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Risikostufen"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "personenbezogene Daten"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "zurück"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "In der Stanford Enzyklopädie für Philosophie steht: Künstliche Intelligenz (KI) ist das Gebiet, das sich mit der Erschaffung künstlicher Tiere (oder zumindest künstlicher Lebewesen, die – in geeigneten Kontexten – wie Tiere erscheinen) und für viele auch künstlicher Personen (oder zumindest künstlicher Lebewesen, die – in geeigneten Kontexten – wie Personen erscheinen) befasst."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Spamfilter, Diagnose von Krankheiten auf MRT-Bildern, Chatbots, biometrische Überwachung im öffentlichen Raum."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Zurück"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "[speed=-1]Lernen Sie nun die einzelnen Stufen genauer kennen."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "KI im Alltag: Wahrscheinlich sind die bisherigen Beispiele für Sie im Berufsalltag noch nicht relevant, sicher kennen Sie aber und vielleicht nutzen Sie auch schon sogenannte Sprachmodelle, die uns Fragen beantworten, Texte schreiben, übersetzen und vieles mehr. Beispiele hierfür sind ChatGPT oder Gemini."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Erste wichtige Regel: Jegliche Eingabe von personenbezogenen Daten in kommerzielle Sprachmodelle ist verboten (laut Datenschutzgrundverordnung, hier ist nicht unbedingt der AI Act die Grundlage). Wollen Sie sich davor schützen, dass aus Ihren Anfragen von Firmen Rückschlüsse über Ihre eigene Person gezogen werden, nutzen sie am besten gar keine kommerziellen Modelle."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Glücklicherweise bietet die Universität Greifswald eine Alternative. Das Rechenzentrum stellt uns eine ganze Reihe von Sprachmodellen zur Verfügung, die auf der Infrastruktur der Universität installiert sind und Daten nicht nach außen lassen. Ihre Anfragen sind damit so sicher wie Ihre Daten, die Sie in der Cloud der Universität speichern. https://open-webui.wolke.uni-greifswald.de"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Dürfen Sie hier jetzt persönliche Daten eingeben? Nein, nur mit Zustimmung der Person, von der die Daten stammen, und unter der Voraussetzung, dass die Person vollständig informiert ist und genau der Eingabe für diesen Zweck zugestimmt hat."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Ein weiteres Problem mit Ki und Sprachmodellen ist Ihre Zuverlässigkeit. Seien Sie daher kritisch bei jeder Information, die Ihnen ein Modell liefert und prüfen Sie nach. Nutzen Sie z.B. nicht ungelesen Texte für Emails oder ungeprüfte Informationen für Vorträge."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Was sind denn eigentlich personenbezogene Daten?"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Alle Informationen, die Sie in ein KI System eingeben, sind Daten. Personenbezogene Daten können Menschen direkt oder indirekt (durch Zusammenführung verschiedener Daten) identifizieren."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Direkt identifizierende Daten sind z.B. Name, Adresse, Personalausweisnummer. Indirekt identifizierende Informationen sind z.B. Geburtsdatum, Geschlecht, Standortdaten, Online-Kennungen (IP-Adresse, Cookie-ID), biometrische Daten (Gesichtserkennung, Fingerabdruck), Gesundheitsdaten, finanzielle Informationen, politische Meinungen, religiöse Überzeugung."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Steuerung"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "aktuelle Aufgabe"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Verwenden Sie die Pfeiltasten oder w,a,s,d zum Bewegen. Mit der Leertaste können Sie springen."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Bewegen"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Mit [r] schalten Sie zwischen Kamera- und Wurfmodus um. Im Wurfmodus können Sie jederzeit Bälle werfen. Durch Bewegen der Mause können Sie zielen (Sie sollten ein Fadenkreuz sehen) und klicken zum Werfen."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Werfen"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Um Objekte aufzuheben nutzen Sie die Taste [e]. Mit [q] können sie wieder abgelegt werden."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Objekte aufheben"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Um mit Personen zu reden, drücken Sie [Enter] oder [t]. Personen sind ansprechbar, wenn unten links eine Aufforderung zum Reden steht."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Reden"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Mit [r] schalten Sie zwischen Kamera- und Wurfmodus um. Im Kameramodus können Sie durch Bewegen der Maus die Kamera steueren, durch scrollen kann gezoomt werden."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Kamera"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Sprechen Sie mit den Aliens, um verschiedene Definitionen von Künstlicher Intelligenz (KI) kennenzulernen."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Start einer Unterhaltung mit [t] oder Enter."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Laufen Sie weiter zur Wurfzone. Dort angekommen, können Sie die Ballons abwerfen, um zu entdecken, in was für Systemen KI bereits eingesetzt wird bzw. werden kann. Sammeln Sie danach die Batterien, Sie werden sie im weiteren Verlauf benötigen."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Werfen mit [r] und Zielen mit der Maus (Fadenkreuz)."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"In der folgenden Aufgabe geht es darum, die eben gesammelten Batterien zu ihren passenden Generatoren zuzuordnen. Dadurch wird das Raumschiff geladen und kann wieder starten. \n"
|
||||
"Die Batterien befinden sich im Inventar, welches sich mit [c] öffnen (und auch wieder schließen) lässt. Zum Zuordnen eine Batterie auswählen (über den Button) und anschließend zu den Generatoren transportieren und dort (mit [f]) wieder loslassen und einsetzen. \n"
|
||||
"Jeder Generator steht für eine der vier Risikostufen. \n"
|
||||
"Die Batterien bilden je ein KI-System ab."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Um in das Raumschiff zu gelangen, müssen Sie gleich als Passscode einmal alle personenbezogenen Daten auf dem Keypad auswählen. Zum Starten dieses Spiels, drücken Sie [k]."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Beantworten Sie die unten stehen Fragen, indem Sie sich auf das Feld stellen, dass zur richtigen Antwortmöglichkeit gehört. Bei richtiger Antwort öffnet sich die Tür und Sie glangen zur nächsten Frage."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Lernen Sie die Steuerung kennen."
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/albatross.dialogue
|
||||
#: Interact/dialogue/quiz_explainer.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Albatross"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/albatross.dialogue
|
||||
msgid "Guten Tag, mein Name ist Albatross. Ich bin eine Künstliche Intelligenz, die entwickelt wurde um dieses Raumschiff zu steuern. Da KI nur verantwortungsvoll genutzt werden kann, wenn Menschen sie verstehen, habe ich den Auftrag Sie zu Ihrer KI-Schulung zu fliegen. Nach der Landung kann ich Sie erst wieder reinlassen und zurück fliegen, wenn Sie genug gelernt haben. Starten wir nun diese Reise! ([Enter/Leertaste/Klicken])"
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/quiz_explainer.dialogue
|
||||
msgid "Willkommen zurück! Ich hoffe, Sie konnten einiges lernen, sowohl über KI im allgemeinen als auch speziell den EU AI Act. Bevor ich Sie zurück zur Erde fliegen kann, muss ich dieses Wissen allerdings einmal überprüfen."
|
||||
msgstr ""
|
||||
|
||||
#: Interact/dialogue/quiz_explainer.dialogue
|
||||
msgid "Dazu werde ich Ihnen 3 Fragen stellen. Vor Ihnen auf dem Boden befinden sich Antwortplatten. Wählen Sie die zur Frage richtige Antwort aus, und stellen Sie sich auf die zugehörige Platform. Wurde richtig geantwortet, wird sich die Tür öffen und Sie gelangen zur nächsten Frage. Bei einer falschen Antwort denken Sie nochmal genau nach und wählen dann eine andere Antwort-Platform. Nach Abschluss des Quizzes können wir gemeinsam zur Erde zurückfliegen. Viel Erfolg!"
|
||||
msgstr ""
|
||||
@@ -0,0 +1,603 @@
|
||||
# English translation for AI-Training for the following files:
|
||||
# res://Interact/dialogue/simple_dialogue.dialogue
|
||||
# res://Interact/dialogue/contact_info.dialogue
|
||||
# res://Interact/dialogue/intro.dialogue
|
||||
# res://Interact/dialogue/ai_v1.dialogue
|
||||
# res://Interact/dialogue/ai_v4.dialogue
|
||||
# res://Interact/dialogue/ai_v3.dialogue
|
||||
# res://Interact/dialogue/ai_v2.dialogue
|
||||
# res://Interact/dialogue/explain_ordering_game.dialogue
|
||||
# res://Interact/dialogue/ai_v5.dialogue
|
||||
# res://Interact/dialogue/helper_intro.dialogue
|
||||
# res://Interact/dialogue/helper.dialogue
|
||||
# res://Interact/dialogue/keypad.dialogue
|
||||
# res://Interact/dialogue/albatross.dialogue
|
||||
# res://Interact/dialogue/quiz_explainer.dialogue
|
||||
#
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: AI-Training\n"
|
||||
"Language: en\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8-bit\n"
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Nathan"
|
||||
msgstr "Nathan"
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "[[Hi|Hello|Howdy]], this is some dialogue."
|
||||
msgstr "[[Hi|Hello|Howdy]], this is some dialogue."
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "Here are some choices."
|
||||
msgstr "Here are some choices."
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "You picked the first one."
|
||||
msgstr "You picked the first one."
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "First one"
|
||||
msgstr "First one"
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "You picked the second one."
|
||||
msgstr "You picked the second one."
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "Second one"
|
||||
msgstr "Second one"
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "Start again"
|
||||
msgstr "Start again"
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "End the conversation"
|
||||
msgstr "End the conversation"
|
||||
|
||||
#: Interact/dialogue/simple_dialogue.dialogue
|
||||
msgid "For more information see the online documentation."
|
||||
msgstr "For more information see the online documentation."
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Hallo. Ich bin Datenschutzbeauftragter. Ich würde gerne ein paar Infos geben."
|
||||
msgstr "Hello. I am the data protection officer. I would like to share some information."
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Wozu soll ich etwas erzählen"
|
||||
msgstr "What should I tell you about"
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Wenn Sie etwas sehen /etwas melden wollen, bezogen auf folgenden [url=https://artificialintelligenceact.eu/de/recital/172/]Artikel[/url] bzw. [url=https://eur-lex.europa.eu/eli/dir/2019/1937/oj?locale=de]Richtlinie[/url]"
|
||||
msgstr "If you see something / want to report something related to the following [url=https://artificialintelligenceact.eu/recital/172/]Article[/url] or [url=https://eur-lex.europa.eu/eli/dir/2019/1937/oj?locale=en]Directive[/url]"
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Verstöße melden / Whistleblowing"
|
||||
msgstr "Report violations / Whistleblowing"
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Link"
|
||||
msgstr "Link"
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "aktuelle Gerichtsverfahren"
|
||||
msgstr "Current court cases"
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Kontaktinfo für weitere Fragen"
|
||||
msgstr "Contact info for further questions"
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Nichts weiter, ich hab alles schon gehört"
|
||||
msgstr "Nothing more, I have already heard everything"
|
||||
|
||||
#: Interact/dialogue/contact_info.dialogue
|
||||
msgid "Danke für Ihre Zeit. Viel Spaß beim weiteren Erkunden."
|
||||
msgstr "Thank you for your time. Enjoy exploring further."
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Boss"
|
||||
msgstr "Boss"
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Hallo! Vielen Dank, dass du hier bist."
|
||||
msgstr "Hello! Thank you for being here."
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Deine Aufgabe ist es, den EU Ai Act besser zu verstehen."
|
||||
msgstr "Your task is to better understand the EU AI Act."
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Dafür senden wir dich auf den KI Planeten."
|
||||
msgstr "To that end, we are sending you to the AI planet."
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Dort wirst du lernen, was KI ist, in welchen Bereichen sie Anwendung findet, welche Einstufungen es gibt und vieles mehr."
|
||||
msgstr "There you will learn what AI is, in which areas it is used, what classifications exist, and much more."
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Wenn du alle Aufgaben erledigt hast, kannst du zurück kommen."
|
||||
msgstr "Once you have completed all tasks, you can return."
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Viel Spaß auf der Reise! Wir sehen uns danach wieder."
|
||||
msgstr "Have fun on your journey! We will see each other again afterwards."
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Starten der Reise"
|
||||
msgstr "Start the journey"
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Viel Spaß beim weiteren austesten der Steuerung. Wenn du bereit bist, klicke auf Button(?)/rede wieder mit mir."
|
||||
msgstr "Have fun testing the controls further. When you are ready, click the button / talk to me again."
|
||||
|
||||
#: Interact/dialogue/intro.dialogue
|
||||
msgid "Noch weiter hier bleiben"
|
||||
msgstr "Stay here a bit longer"
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v1.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien001"
|
||||
msgstr "Alien001"
|
||||
|
||||
#: Interact/dialogue/ai_v1.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Ich finde es schwierig künstliche Intelligenz zu definieren. Die Menschen sind sich ja nichtmal einig was Intelligenz ist."
|
||||
msgstr "I find it difficult to define artificial intelligence. Humans cannot even agree on what intelligence is."
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v4.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien004"
|
||||
msgstr "Alien004"
|
||||
|
||||
#: Interact/dialogue/ai_v4.dialogue
|
||||
msgid "In der Stanford Enzyklopädie für Philosophie steht: Künstliche Intelligenz (KI) ist das Gebiet, das sich mit der Erschaffung künstlicher Tiere (oder zumindest künstlicher Lebewesen, die - in geeigneten Kontexten - wie Tiere erscheinen) und für viele auch künstlicher Personen (oder zumindest künstlicher Lebewesen, die - in geeigneten Kontexten - wie Personen erscheinen) befasst."
|
||||
msgstr "The Stanford Encyclopedia of Philosophy says: Artificial intelligence (AI) is the field that deals with the creation of artificial animals (or at least artificial beings that — in suitable contexts — appear like animals) and for many also artificial persons (or at least artificial beings that — in suitable contexts — appear like persons)."
|
||||
|
||||
#: Interact/dialogue/ai_v4.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Ich glaube das heißt KI möchte Lebewesen erschaffen, die für Menschen nicht von natürlichen Lebewesen unterscheidbar sind."
|
||||
msgstr "I think that means AI wants to create beings that humans cannot distinguish from natural living beings."
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v3.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien003"
|
||||
msgstr "Alien003"
|
||||
|
||||
#: Interact/dialogue/ai_v3.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Modelle Künstlicher Intelligenz können komplexe Funktionen über sehr viele Parameter abbilden. Die Parameter werden aus Daten gelernt."
|
||||
msgstr "Artificial intelligence models can represent complex functions across a very large number of parameters. The parameters are learned from data."
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v2.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien002"
|
||||
msgstr "Alien002"
|
||||
|
||||
#: Interact/dialogue/ai_v2.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Künstliche Intelligenz lernt aus großen Datenmengen. Die Ergebnisse sind nicht deterministisch, also es kommt nie genau das gleiche raus, wenn ich einen Algorithmus zweimal lernen lasse."
|
||||
msgstr "Artificial intelligence learns from large amounts of data. The results are not deterministic, so you never get exactly the same outcome if you train an algorithm twice."
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Die vier Risikostufen"
|
||||
msgstr "The four risk levels"
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Minimales Risiko"
|
||||
msgstr "Minimal risk"
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Geringes Risiko"
|
||||
msgstr "Limited risk"
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Hohes Risiko"
|
||||
msgstr "High risk"
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Inakzeptables Risiko"
|
||||
msgstr "Unacceptable risk"
|
||||
|
||||
msgid "Minimales Risiko"
|
||||
msgstr "Minimal risk"
|
||||
|
||||
msgid "Geringes Risiko"
|
||||
msgstr "Limited risk"
|
||||
|
||||
msgid "Hohes Risiko"
|
||||
msgstr "High risk"
|
||||
|
||||
msgid "Inakzeptables Risiko"
|
||||
msgstr "Unacceptable risk"
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Der EU AI Act bewertet KI Systeme in vier Risikostufen, von minimalem bis zu inakzeptablem Risiko für Grundrechte und Sicherheit."
|
||||
msgstr "The EU AI Act assesses AI systems in four risk levels, from minimal to unacceptable risk to fundamental rights and safety."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Je höher das Risiko, umso strenger die Regulierung. KI Systeme mit inakzeptablem Risiko sind verboten."
|
||||
msgstr "The higher the risk, the stricter the regulation. AI systems with unacceptable risk are prohibited."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
msgid ""
|
||||
"In der folgenden Aufgabe geht es darum, die eben gesammelten Batterien zu ihren passenden Generatoren zuzuordnen. Dadurch wird das Raumschiff geladen und kann wieder starten. \n"
|
||||
"Die Batterien befinden sich im Inventar, welches sich mit [c] öffnen (und auch wieder schließen) lässt."
|
||||
msgstr ""
|
||||
"In the following task, assign the batteries you just collected to their matching generators. This will charge the spaceship so it can take off again. \n"
|
||||
"The batteries are in the inventory, which you can open (and close again) with [c]."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
msgid ""
|
||||
"Zum Zuordnen eine Batterie auswählen (über den Button) und anschließend zu den Generatoren transportieren und dort (mit [f]) wieder loslassen und einsetzen. \n"
|
||||
"Jeder Generator steht für eine der vier Risikostufen. \n"
|
||||
"Die Batterien bilden je ein KI-System ab."
|
||||
msgstr ""
|
||||
"To assign one, select a battery (via the button), then carry it to the generators and insert it there (with [f]). \n"
|
||||
"Each generator represents one of the four risk levels. \n"
|
||||
"Each battery represents an AI system."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "[speed=1]Lernen Sie nun die einzelnen Stufen genauer kennen. Eine der Stufen mit der Maus oder den Pfeiltasten auswählen und klicken/Enter/Leertaste drücken."
|
||||
msgstr "[speed=1]Now learn more about the individual levels. Select one of the levels with the mouse or arrow keys and click / press Enter / Space."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"Keine spezifischen Anforderungen. \n"
|
||||
"Ein Beispiel für diese Kategorie wäre ein Schachcomputer."
|
||||
msgstr ""
|
||||
"No specific requirements. \n"
|
||||
"An example of this category would be a chess computer."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"Informationspflicht über die Benutzung der KI. \n"
|
||||
"Ein Beispiel für diese Kategorie wäre ein Programmierbot."
|
||||
msgstr ""
|
||||
"Obligation to inform about the use of AI. \n"
|
||||
"An example of this category would be a coding bot."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"Strenge Anforderungen an Transparenz, Dokumentation, Überwachung des Systems durch Menschen! \n"
|
||||
"Ein Beispiel für diese Kategorie wäre ein KI-System, dass automatisch Arbeiten von Studierenden oder Schülern/Schülerinnen bewertet."
|
||||
msgstr ""
|
||||
"Strict requirements for transparency, documentation, and human oversight of the system! \n"
|
||||
"An example of this category would be an AI system that automatically grades work by students."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"KI ist verboten! \n"
|
||||
"Ein Beispiel für diese Kategorie wäre der Einsatz eines KI-Systems, dass das Risiko, dass eine Person in Zukunft eine Straftat begeht, vorhersagt."
|
||||
msgstr ""
|
||||
"AI is prohibited! \n"
|
||||
"An example of this category would be the use of an AI system that predicts the risk that a person will commit a crime in the future."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
msgid "Ich habe alles gelernt, beginne mit dem Spiel."
|
||||
msgstr "I have learned everything, start the game."
|
||||
|
||||
#: Interact/dialogue/explain_ordering_game.dialogue
|
||||
msgid "[speed=-1]Lernen Sie nun die einzelnen Stufen genauer kennen. Eine der Stufen mit der Maus oder den Pfeiltasten auswählen und klicken/Enter/Leertaste drücken. Wenn Sie fertig sind, können Sie durch Wählen der untersten Option das Spiel fortsetzen."
|
||||
msgstr "[speed=-1]Now learn more about the individual levels. Select one of the levels with the mouse or arrow keys and click / press Enter / Space. When you are done, you can continue the game by choosing the bottom option."
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/ai_v5.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Alien005"
|
||||
msgstr "Alien005"
|
||||
|
||||
#: Interact/dialogue/ai_v5.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Die Stanford 100 year study of AI sagt: Künstliche Intelligenz ist die Tätigkeit, die darauf abzielt, Maschinen intelligent zu machen, und Intelligenz ist die Eigenschaft, die es einem Wesen ermöglicht, in seiner Umgebung angemessen und vorausschauend zu handeln."
|
||||
msgstr "The Stanford 100 Year Study of AI says: Artificial intelligence is the activity devoted to making machines intelligent, and intelligence is the quality that enables an entity to function appropriately and with foresight in its environment."
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Helfer"
|
||||
msgstr "Helper"
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Hallo! Ich bin Ihr Helfer. Ich werde Sie ab jetzt auf Ihrer Reise auf diesem Planeten begleiten, und bei Fragen zu Verfügung stehen."
|
||||
msgstr "Hello! I am your helper. From now on I will accompany you on your journey on this planet and be available if you have questions."
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Ich kann helfen, wenn Fragen zum Spiel aufkommen, sei es zur genauen Steuerung oder was genau die aktuelle Aufgabe ist."
|
||||
msgstr "I can help if questions about the game come up, whether about the exact controls or what the current task is."
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Ebenso habe ich den gesamten Text des EU AI Acts und der Datenschutzgrundverordnung zum Nachschlagen parat, zusätzlich können Sie eigene Fragen zu diesen Texten stellen, die ich dann versuchen werde zu beantworten."
|
||||
msgstr "I also have the full text of the EU AI Act and the General Data Protection Regulation ready for reference. In addition, you can ask your own questions about these texts, which I will then try to answer."
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Dazu einfach [h] drücken und die passende Option auswählen. Das geht jederzeit, solange gerade kein anderer Dialog offen ist."
|
||||
msgstr "To do so, simply press [h] and select the appropriate option. You can do this at any time as long as no other dialogue is open."
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Um zurück zum Raumschiff zu gelangen und dieses Starten zu können und im Anschluss zurück auf die Erde zu fliegen, müssen vier Aufgaben bewältigt werden. Jede wird vorher genau erklärt."
|
||||
msgstr "To get back to the spaceship, launch it, and then fly back to Earth, you must complete four tasks. Each one will be explained beforehand."
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Oben stehen auch für die Dauer einer jeden Aufgabe nochmal Hinweise zur Steuerung bzw. was gerade gemacht werden soll."
|
||||
msgstr "At the top you will also see hints for the duration of each task about the controls or what you should do next."
|
||||
|
||||
#: Interact/dialogue/helper_intro.dialogue
|
||||
msgid "Los geht's, laufen Sie einfach weiter und schon werden Sie zur ersten Aufgabe gelangen! Viel Erfolg und Vergnügen"
|
||||
msgstr "Let's go — just keep walking and you will reach the first task! Good luck and have fun"
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid ""
|
||||
msgstr ""
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Zur Erinnerung"
|
||||
msgstr "As a reminder"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "bisher gelerntes nochmal ansehen"
|
||||
msgstr "Review what you have learned so far"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Fragen zum EU AI Act stellen"
|
||||
msgstr "Ask questions about the EU AI Act"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Hilfe zum Spiel (Steuerung, aktuelle Aufabe, ...)"
|
||||
msgstr "Help with the game (controls, current task, ...)"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "gesamter Text des EU AI Acts (öffnet Link im Browser)"
|
||||
msgstr "Full text of the EU AI Act (opens link in browser)"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "gesamter Text der DSGVO (öffnet Link im Browser)"
|
||||
msgstr "Full text of the GDPR (opens link in browser)"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Musik an/aus"
|
||||
msgstr "Music on/off"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Schließen"
|
||||
msgstr "Close"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Alien-Dialoge wiederholen"
|
||||
msgstr "Replay alien dialogues"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Mögliche Anwendungen von KI"
|
||||
msgstr "Possible applications of AI"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Risikostufen"
|
||||
msgstr "Risk levels"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "personenbezogene Daten"
|
||||
msgstr "Personal data"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "zurück"
|
||||
msgstr "Back"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "In der Stanford Enzyklopädie für Philosophie steht: Künstliche Intelligenz (KI) ist das Gebiet, das sich mit der Erschaffung künstlicher Tiere (oder zumindest künstlicher Lebewesen, die – in geeigneten Kontexten – wie Tiere erscheinen) und für viele auch künstlicher Personen (oder zumindest künstlicher Lebewesen, die – in geeigneten Kontexten – wie Personen erscheinen) befasst."
|
||||
msgstr "The Stanford Encyclopedia of Philosophy says: Artificial intelligence (AI) is the field that deals with the creation of artificial animals (or at least artificial beings that — in suitable contexts — appear like animals) and for many also artificial persons (or at least artificial beings that — in suitable contexts — appear like persons)."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Spamfilter, Diagnose von Krankheiten auf MRT-Bildern, Chatbots, biometrische Überwachung im öffentlichen Raum."
|
||||
msgstr "Spam filters, diagnosing diseases from MRI images, chatbots, biometric surveillance in public spaces."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Zurück"
|
||||
msgstr "Back"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "[speed=-1]Lernen Sie nun die einzelnen Stufen genauer kennen."
|
||||
msgstr "[speed=-1]Now learn more about the individual levels."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "KI im Alltag: Wahrscheinlich sind die bisherigen Beispiele für Sie im Berufsalltag noch nicht relevant, sicher kennen Sie aber und vielleicht nutzen Sie auch schon sogenannte Sprachmodelle, die uns Fragen beantworten, Texte schreiben, übersetzen und vieles mehr. Beispiele hierfür sind ChatGPT oder Gemini."
|
||||
msgstr "AI in everyday life: The examples so far may not yet be relevant to your professional routine, but you certainly know — and may already use — so-called language models that answer questions, write texts, translate, and much more. Examples include ChatGPT or Gemini."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Erste wichtige Regel: Jegliche Eingabe von personenbezogenen Daten in kommerzielle Sprachmodelle ist verboten (laut Datenschutzgrundverordnung, hier ist nicht unbedingt der AI Act die Grundlage). Wollen Sie sich davor schützen, dass aus Ihren Anfragen von Firmen Rückschlüsse über Ihre eigene Person gezogen werden, nutzen sie am besten gar keine kommerziellen Modelle."
|
||||
msgstr "First important rule: Entering any personal data into commercial language models is prohibited (under the GDPR; the AI Act is not necessarily the legal basis here). If you want to prevent companies from drawing conclusions about you from your queries, it is best not to use commercial models at all."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Glücklicherweise bietet die Universität Greifswald eine Alternative. Das Rechenzentrum stellt uns eine ganze Reihe von Sprachmodellen zur Verfügung, die auf der Infrastruktur der Universität installiert sind und Daten nicht nach außen lassen. Ihre Anfragen sind damit so sicher wie Ihre Daten, die Sie in der Cloud der Universität speichern. https://open-webui.wolke.uni-greifswald.de"
|
||||
msgstr "Fortunately, the University of Greifswald offers an alternative. The computing center provides us with a range of language models installed on the university's infrastructure that do not send data outside. Your queries are thus as secure as data you store in the university cloud. https://open-webui.wolke.uni-greifswald.de"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Dürfen Sie hier jetzt persönliche Daten eingeben? Nein, nur mit Zustimmung der Person, von der die Daten stammen, und unter der Voraussetzung, dass die Person vollständig informiert ist und genau der Eingabe für diesen Zweck zugestimmt hat."
|
||||
msgstr "May you enter personal data here now? No — only with the consent of the person the data belongs to, and only if that person is fully informed and has specifically consented to the entry for this purpose."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Ein weiteres Problem mit Ki und Sprachmodellen ist Ihre Zuverlässigkeit. Seien Sie daher kritisch bei jeder Information, die Ihnen ein Modell liefert und prüfen Sie nach. Nutzen Sie z.B. nicht ungelesen Texte für Emails oder ungeprüfte Informationen für Vorträge."
|
||||
msgstr "Another problem with AI and language models is their reliability. Be critical of every piece of information a model gives you and verify it. For example, do not use unread texts for emails or unchecked information for presentations."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Was sind denn eigentlich personenbezogene Daten?"
|
||||
msgstr "What actually counts as personal data?"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Alle Informationen, die Sie in ein KI System eingeben, sind Daten. Personenbezogene Daten können Menschen direkt oder indirekt (durch Zusammenführung verschiedener Daten) identifizieren."
|
||||
msgstr "All information you enter into an AI system is data. Personal data can identify people directly or indirectly (by combining different pieces of data)."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Direkt identifizierende Daten sind z.B. Name, Adresse, Personalausweisnummer. Indirekt identifizierende Informationen sind z.B. Geburtsdatum, Geschlecht, Standortdaten, Online-Kennungen (IP-Adresse, Cookie-ID), biometrische Daten (Gesichtserkennung, Fingerabdruck), Gesundheitsdaten, finanzielle Informationen, politische Meinungen, religiöse Überzeugung."
|
||||
msgstr "Directly identifying data includes, for example, name, address, and ID card number. Indirectly identifying information includes, for example, date of birth, gender, location data, online identifiers (IP address, cookie ID), biometric data (facial recognition, fingerprint), health data, financial information, political opinions, and religious beliefs."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Steuerung"
|
||||
msgstr "Controls"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "aktuelle Aufgabe"
|
||||
msgstr "Current task"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Verwenden Sie die Pfeiltasten oder w,a,s,d zum Bewegen. Mit der Leertaste können Sie springen."
|
||||
msgstr "Use the arrow keys or w,a,s,d to move. You can jump with the space bar."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Bewegen"
|
||||
msgstr "Move"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Mit [r] schalten Sie zwischen Kamera- und Wurfmodus um. Im Wurfmodus können Sie jederzeit Bälle werfen. Durch Bewegen der Mause können Sie zielen (Sie sollten ein Fadenkreuz sehen) und klicken zum Werfen."
|
||||
msgstr "Press [r] to switch between camera and throw mode. In throw mode you can throw balls at any time. Move the mouse to aim (you should see a crosshair) and click to throw."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Werfen"
|
||||
msgstr "Throw"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Um Objekte aufzuheben nutzen Sie die Taste [e]. Mit [q] können sie wieder abgelegt werden."
|
||||
msgstr "To pick up objects, use the [e] key. You can drop them again with [q]."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Objekte aufheben"
|
||||
msgstr "Pick up objects"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Um mit Personen zu reden, drücken Sie [Enter] oder [t]. Personen sind ansprechbar, wenn unten links eine Aufforderung zum Reden steht."
|
||||
msgstr "To talk to people, press [Enter] or [t]. People can be spoken to when a talk prompt appears at the bottom left."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Reden"
|
||||
msgstr "Talk"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Mit [r] schalten Sie zwischen Kamera- und Wurfmodus um. Im Kameramodus können Sie durch Bewegen der Maus die Kamera steueren, durch scrollen kann gezoomt werden."
|
||||
msgstr "Press [r] to switch between camera and throw mode. In camera mode you can control the camera by moving the mouse, and zoom by scrolling."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Kamera"
|
||||
msgstr "Camera"
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Sprechen Sie mit den Aliens, um verschiedene Definitionen von Künstlicher Intelligenz (KI) kennenzulernen."
|
||||
msgstr "Talk to the aliens to learn different definitions of artificial intelligence (AI)."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Start einer Unterhaltung mit [t] oder Enter."
|
||||
msgstr "Start a conversation with [t] or Enter."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Laufen Sie weiter zur Wurfzone. Dort angekommen, können Sie die Ballons abwerfen, um zu entdecken, in was für Systemen KI bereits eingesetzt wird bzw. werden kann. Sammeln Sie danach die Batterien, Sie werden sie im weiteren Verlauf benötigen."
|
||||
msgstr "Keep walking to the throw zone. Once there, you can pop the balloons to discover in which systems AI is already used or can be used. Then collect the batteries — you will need them later."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Werfen mit [r] und Zielen mit der Maus (Fadenkreuz)."
|
||||
msgstr "Throw with [r] and aim with the mouse (crosshair)."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid ""
|
||||
"In der folgenden Aufgabe geht es darum, die eben gesammelten Batterien zu ihren passenden Generatoren zuzuordnen. Dadurch wird das Raumschiff geladen und kann wieder starten. \n"
|
||||
"Die Batterien befinden sich im Inventar, welches sich mit [c] öffnen (und auch wieder schließen) lässt. Zum Zuordnen eine Batterie auswählen (über den Button) und anschließend zu den Generatoren transportieren und dort (mit [f]) wieder loslassen und einsetzen. \n"
|
||||
"Jeder Generator steht für eine der vier Risikostufen. \n"
|
||||
"Die Batterien bilden je ein KI-System ab."
|
||||
msgstr ""
|
||||
"In the following task, assign the batteries you just collected to their matching generators. This will charge the spaceship so it can take off again. \n"
|
||||
"The batteries are in the inventory, which you can open (and close again) with [c]. To assign one, select a battery (via the button), then carry it to the generators and insert it there (with [f]). \n"
|
||||
"Each generator represents one of the four risk levels. \n"
|
||||
"Each battery represents an AI system."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
#: Interact/dialogue/keypad.dialogue
|
||||
msgid "Um in das Raumschiff zu gelangen, müssen Sie gleich als Passscode einmal alle personenbezogenen Daten auf dem Keypad auswählen. Zum Starten dieses Spiels, drücken Sie [k]."
|
||||
msgstr "To enter the spaceship, you will need to select all personal data on the keypad as a passcode. To start this game, press [k]."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Beantworten Sie die unten stehen Fragen, indem Sie sich auf das Feld stellen, dass zur richtigen Antwortmöglichkeit gehört. Bei richtiger Antwort öffnet sich die Tür und Sie glangen zur nächsten Frage."
|
||||
msgstr "Answer the questions below by standing on the pad that belongs to the correct answer. If the answer is correct, the door opens and you proceed to the next question."
|
||||
|
||||
#: Interact/dialogue/helper.dialogue
|
||||
msgid "Lernen Sie die Steuerung kennen."
|
||||
msgstr "Get to know the controls."
|
||||
|
||||
#. TRANSLATORS: Character name
|
||||
#: Interact/dialogue/albatross.dialogue
|
||||
#: Interact/dialogue/quiz_explainer.dialogue
|
||||
msgctxt "dialogue"
|
||||
msgid "Albatross"
|
||||
msgstr "Albatross"
|
||||
|
||||
msgid "Willkommen"
|
||||
msgstr "Welcome"
|
||||
|
||||
msgid "Raumschiff"
|
||||
msgstr "Spaceship"
|
||||
|
||||
msgid "Spieler1"
|
||||
msgstr "Player1"
|
||||
|
||||
#: Interact/dialogue/albatross.dialogue
|
||||
msgid "Guten Tag, mein Name ist Albatross. Ich bin eine Künstliche Intelligenz, die entwickelt wurde um dieses Raumschiff zu steuern. Da KI nur verantwortungsvoll genutzt werden kann, wenn Menschen sie verstehen, habe ich den Auftrag Sie zu Ihrer KI-Schulung zu fliegen. Nach der Landung kann ich Sie erst wieder reinlassen und zurück fliegen, wenn Sie genug gelernt haben. Starten wir nun diese Reise! ([Enter/Leertaste/Klicken])"
|
||||
msgstr "Good day, my name is Albatross. I am an artificial intelligence developed to pilot this spaceship. Since AI can only be used responsibly when humans understand it, I have been tasked with flying you to your AI training. After landing, I can only let you back in and fly you home once you have learned enough. Let us begin this journey! ([Enter/Space/Click])"
|
||||
|
||||
#: Interact/dialogue/quiz_explainer.dialogue
|
||||
msgid "Willkommen zurück! Ich hoffe, Sie konnten einiges lernen, sowohl über KI im allgemeinen als auch speziell den EU AI Act. Bevor ich Sie zurück zur Erde fliegen kann, muss ich dieses Wissen allerdings einmal überprüfen."
|
||||
msgstr "Welcome back! I hope you were able to learn a lot, both about AI in general and specifically about the EU AI Act. Before I can fly you back to Earth, however, I need to check this knowledge once."
|
||||
|
||||
#: Interact/dialogue/quiz_explainer.dialogue
|
||||
msgid "Dazu werde ich Ihnen 3 Fragen stellen. Vor Ihnen auf dem Boden befinden sich Antwortplatten. Wählen Sie die zur Frage richtige Antwort aus, und stellen Sie sich auf die zugehörige Platform. Wurde richtig geantwortet, wird sich die Tür öffen und Sie gelangen zur nächsten Frage. Bei einer falschen Antwort denken Sie nochmal genau nach und wählen dann eine andere Antwort-Platform. Nach Abschluss des Quizzes können wir gemeinsam zur Erde zurückfliegen. Viel Erfolg!"
|
||||
msgstr "To do so, I will ask you 3 questions. In front of you on the floor are answer pads. Choose the correct answer to the question and stand on the corresponding platform. If you answer correctly, the door will open and you will proceed to the next question. If you answer incorrectly, think carefully again and then choose a different answer platform. After completing the quiz, we can fly back to Earth together. Good luck!"
|
||||
@@ -0,0 +1,178 @@
|
||||
keys,de,en
|
||||
FLOAT_TEXT,"Seit dem ersten Star Wars Film hat sich die Erde ca. 50 mal um die Sonne gedreht und viel ist seitdem passiert.
|
||||
Intelligente Roboter wie R2D2 und C3PO sind keine ferne Science Fiction mehr und Künstliche Intelligenz ist in unserem Alltag angekommen.
|
||||
Die Europäische Union hat daher das weltweit erste Gesetz zur Regulierung von Künstlicher Intelligenz erlassen, den EU AI Act.
|
||||
Dieses Spiel soll Ihnen helfen grundlegende Kenntnisse zu Künstlicher Intelligenz und den Regelungen des EU AI Acts zu erlernen.
|
||||
Bitte beachten Sie, dass dieses Spiel nur als Einführung dienen kann, konkrete Fragen sind meist nicht allgemein zu beantworten und sollten von einer Fachperson eingeschätzt werden.","Since the first Star Wars movie, the Earth has orbited the Sun about 50 times, and a lot has happened since then.
|
||||
Intelligent robots like R2-D2 and C-3PO are no longer things of distant science fiction, and artificial intelligence has become part of our everyday lives.
|
||||
The European Union has therefore enacted the world's first law regulating artificial intelligence, the EU AI Act.
|
||||
This game is designed to help you learn the basics of artificial intelligence and the provisions of the EU AI Act.
|
||||
Please note that this game is intended only as an introduction, specific questions usually cannot be answered in general terms and should be evaluated by a specialist."
|
||||
START_GAME,Los geht's!,Let's go!
|
||||
CHANGE_FLOAT,normalen Text anzeigen,Show normal text
|
||||
CHANGE_STATIC,"Fliegenden Text
|
||||
anzeigen","Show
|
||||
scrolling text"
|
||||
TEXT_FINISHED,Fertig gelesen,Finished reading
|
||||
CONGRATS_TEXT,Sie haben alle Aufgaben erfolgreich gemeistert und konnten zur Erde zurück kehren. \n Wir hoffen Sie konnten etwas über KI und den EU AI Act lernen.,You have successfully completed all the tasks and have returned to Earth. \n We hope you learned something about AI and the EU AI Act.
|
||||
CONGRATS_SHORT,Herzlichen Glückwunsch ,Congratulations
|
||||
PLAY_AGAIN,Nochmal spielen,Play again
|
||||
START,Start,Start
|
||||
NAME_PLACEHOLDER,Name wählen...,Choose a name...
|
||||
CHOOSE_TEMPLATE,Vorlage wählen,Choose a template
|
||||
OPTIONAL_COLORS,(optional: Farben personalisieren),(optional: customize colors)
|
||||
CUSTOMIZE_COLORS,Farben personalisieren,Customize colors
|
||||
OR,oder,or
|
||||
GAME_TITLE,[center]Spielerisches AI Act Training,[center]Playful AI Act Training
|
||||
WELCOME_TEXT,[center]Herzlich Willkommen! Suchen Sie sich Ihre Spielfigur aus und lernen Sie den EU AI Act kennen.,[center]Welcome! Choose your character and learn about the EU AI Act.
|
||||
LICENSE_TEXT,"Verfügbar unter Lizenz GNU GPLv3
|
||||
https://git.uni-greifswald.de/GAIM/gaim","Available under GNU GPLv3 license
|
||||
https://git.uni-greifswald.de/GAIM/gaim"
|
||||
CHANGE_LANGUAGE,Sprache ändern, Change language
|
||||
IMPRESSUM,Impressum,Legal notice
|
||||
PRIVACY,Datenschutzinformation,Privacy information
|
||||
COLOR_SUIT,Farbe Anzug,Suit color
|
||||
COLOR_DETAILS,Farbe Details,Details color
|
||||
COPYRIGHT_UNI,copyright Universität Greifswald (übernehmen keine Haftung),copyright University of Greifswald (no liability assumed)
|
||||
TOOL_DESC,Ein Tool entwickelt von der Universität Greifswald zum spielerischen Verstehen / Entdecken des EU AI Acts,A tool developed by the University of Greifswald for playfully understanding / exploring the EU AI Act
|
||||
TUTORIAL_STEP_0,"Nutzen Sie die Pfeiltasten (oder a,s,d,w), um einmal in alle Richtungen zu laufen.
|
||||
Sie können sie bei längeren Strecken auch gedrückt halten.","Use the arrow keys (or a,s,d,w) to walk once in all directions.
|
||||
You can also hold them down for longer distances."
|
||||
TUTORIAL_STEP_1,Mit der Leertaste können Sie springen.,You can jump with the space bar.
|
||||
TUTORIAL_STEP_2,Durch Bewegen der Maus lässt sich die Kamera steuern. Mit [r] können Sie zwischen dem Kamera und Wurfmodus wechseln.,Move the mouse to control the camera. Press [r] to switch between camera and throw mode.
|
||||
TUTORIAL_STEP_3,"Im Wurfmodus können Sie mit der Maus zielen und durch Klicken Bälle werfen (Sie sollten dabei ein Fadenkreuz sehen).
|
||||
Versuchen Sie, die Ballons zum platzen zu bringen.","In throw mode you can aim with the mouse and throw balls by clicking (you should see a crosshair).
|
||||
Try to pop the balloons."
|
||||
TUTORIAL_STEP_4,"Um Objekte, wie z.B. die blauen Blöcke, aufzuheben, nutzen Sie die Taste [e] (sobald Sie nah genug davor stehen)","To pick up objects such as the blue blocks, use the [e] key (once you are close enough)"
|
||||
TUTORIAL_STEP_5,Ablegen geht mit [q],Drop items with [q]
|
||||
TUTORIAL_STEP_6,"Um mit anderen Lebewesen zu reden, drücken Sie [Enter] oder [t].","To talk to other beings, press [Enter] or [t]."
|
||||
TUTORIAL_TITLE,"Mach dich mit der
|
||||
Steuerung vertraut","Get familiar with
|
||||
the controls"
|
||||
TUTORIAL_SUBTITLE,Probieren Sie die Steuerung aus,Try out the controls
|
||||
HUD_HELP,"[h] drücken für Hilfe
|
||||
[r] für Wechsel zwischen Kamera- und Wurfmodus","Press [h] for help
|
||||
[r] to switch between camera and throw mode"
|
||||
INVENTORY_TITLE,Inventar,Inventory
|
||||
INVENTORY_SELECT,Auswählen,Select
|
||||
INVENTORY_CLOSE_HINT,[c] zum Schließen ohne etwas auszuwählen,[c] to close without selecting anything
|
||||
BATTERY_CHATBOT,Chatbot,Chatbot
|
||||
BATTERY_BIOMETRIC,biometrische Überwachung im öffentlichem Raum,biometric surveillance in public spaces
|
||||
BATTERY_SPAMFILTER,Spamfilter,Spam filter
|
||||
BATTERY_DIAGNOSIS,Diagnose von Krankheiten auf MRT-Bildern,Diagnosing diseases from MRI images
|
||||
HELPER_PROMPT,drücken Sie [t] oder [Enter],press [t] or [Enter]
|
||||
HELPER_TALK,"Rede mit mir!
|
||||
(t / Enter)
|
||||
|
|
||||
|
|
||||
\/","Talk to me!
|
||||
(t / Enter)
|
||||
|
|
||||
|
|
||||
\/"
|
||||
KEYPAD_ID,Ausweis,ID card
|
||||
KEYPAD_PHOTO,Foto,Photo
|
||||
KEYPAD_RESIDENCE,Wohnort,Place of residence
|
||||
KEYPAD_RELATIVITY,Relativitätstheorie,Theory of relativity
|
||||
KEYPAD_WORK,Arbeit,Work
|
||||
KEYPAD_STOCK,Aktienkurs,Stock price
|
||||
KEYPAD_DATE,aktuelles Datum,current date
|
||||
KEYPAD_BIRTHDATE,Geburtstdatum,Date of birth
|
||||
KEYPAD_IP,IP-Adresse,IP address
|
||||
KEYPAD_ID_NUMBER,Personalausweisnummer,ID card number
|
||||
KEYPAD_POLITICAL,politische Meinung,political opinion
|
||||
KEYPAD_RELIGION,Religion,Religion
|
||||
KEYPAD_INSTRUCTION,"Wählen Sie aus den untenstehenden Optionen diejenigen aus, die persönliche Daten enthalten.",Select from the options below those that contain personal data.
|
||||
KEYPAD_MISSING,[noch %s],[%s left]
|
||||
KEYPAD_SUCCESS,"Glückwunsch! Alles wurde richtig ausgewählt, die Aufgabe ist gelöst.","Congratulations! Everything was selected correctly, the task is solved."
|
||||
KEYPAD_RETURN,Sie dürfen nun zurück ins Raumschiff gehen.,You may now return to the spaceship.
|
||||
QUIZ1_Q,Ist der EU AI Act wichtig?,Is the EU AI Act important?
|
||||
QUIZ1_A0,Nein.,No.
|
||||
QUIZ1_A1,"Ja, denn er ist das weltweit erste Gesetz zur Regulierung von KI.","Yes, because it is the world's first law regulating AI."
|
||||
QUIZ1_A2,"Nein, KI ist super und unbedenklich.","No, AI is great and harmless."
|
||||
QUIZ1_A3,Mir egal.,I do not care.
|
||||
QUIZ2_Q,"Stellen Sie sich vor, Sie wollen ein Sprachmodell nutzen um Entwürfe für offizielle Schreiben der Universität zu erstellen. Was ist im Hinblick auf den AI Act dabei zu beachten?",Imagine you want to use a language model to draft official university documents. What should you keep in mind regarding the AI Act?
|
||||
QUIZ2_A0,"Die Verwendung eines LLM ist verboten, da es sich um eine nicht autorisierte Software handelt.",Using an LLM is prohibited because it is unauthorized software.
|
||||
QUIZ2_A1,Die Verwendung des LLM spart Zeit und ist daher unbedenklich.,Using the LLM saves time and is therefore harmless.
|
||||
QUIZ2_A2,"Es ist irrelevant, wie die Entwürfe entstanden sind, solange das Ergebnis professionell aussieht.",It does not matter how the drafts were created as long as the result looks professional.
|
||||
QUIZ2_A3,"Der Inhalt der Entwürfe muss sorgfältig geprüft werden, um sicherzustellen, dass er korrekt, vollständig und nicht irreführend ist. Zudem kann ich ein lokal betriebenes LLM an der Uni Greifswald nutzen und so verhindern, dass Firmen wie Google oder Apple Informationen über meine Arbeit und meine Person erhalten.","The content of the drafts must be carefully checked to ensure it is correct, complete and not misleading. In addition, I can use a locally operated LLM at the University of Greifswald and thus prevent companies like Google or Apple from obtaining information about my work and my person."
|
||||
QUIZ3_Q,"Ein Mitarbeiter möchte ein Sprachmodell nutzen, um eine Zusammenfassung von Feedback-Antworten zu einer Vorlesung von Studierenden zu erstellen. Die Antworten enthalten Namen, Matrikelnummern und persönliche Meinungen, außerdem den Name der Vorlesung und der Universität. Was sollte der Mitarbeiter unbedingt tun?","An employee wants to use a language model to summarize student feedback on a lecture. The responses contain names, student IDs and personal opinions, as well as the name of the lecture and the university. What should the employee definitely do?"
|
||||
QUIZ3_A0,"Die vollständigen Antworten direkt in das Sprachmodell eingeben, um eine möglichst vollständige Analyse zu erhalten.",Enter the complete responses directly into the language model to obtain the most complete analysis possible.
|
||||
QUIZ3_A1,"Die Antworten zunächst in ein anonymisiertes Format überführen, bevor sie dem LLM zugeführt werden. Der Name der Universität und der Vorlesung muss nicht anonymisiert werden, weil es 2 Vorlesungen zum selben Thema gibt.",First convert the responses into an anonymized format before feeding them to the LLM. The name of the university and the lecture do not need to be anonymized because there are 2 lectures on the same topic.
|
||||
QUIZ3_A2,"Die Antworten sind zunächst in ein anonymisiertes Format zu überführen, bevor sie dem Sprachmodell zugeführt werden. Auch der Name der Universität und der Vorlesung muss anonymisiert werden, denn daraus kann auf Teilnehmende oder Lehrende geschlossen werden.","The responses must first be converted into an anonymized format before being fed to the language model. The name of the university and the lecture must also be anonymized, because participants or instructors could be inferred from them."
|
||||
QUIZ3_A3,"Die Namen und Matrikelnummern manuell aus den Antworten entfernen, bevor sie dem Sprachmodell zugeführt werden.",Manually remove names and student IDs from the responses before feeding them to the language model.
|
||||
EARTH,Erde,Earth
|
||||
THROW_ZONE,Wurfzone,Throw zone
|
||||
CONTINUE_HERE,Hier geht es weiter,Continue here
|
||||
JUMP_HERE,Einmal hier drauf springen,Jump onto this once
|
||||
RISK_MINIMAL,Minimal,Minimal
|
||||
RISK_LIMITED,Gering,Limited
|
||||
RISK_HIGH,Hoch,High
|
||||
RISK_UNACCEPTABLE,Inakzeptabel,Unacceptable
|
||||
PASSCODE_REQUIRED,Passcode erforderlich,Passcode required
|
||||
EASTER_SELECT,Vorbeilaufen oder Abwerfen zum Auswählen,Walk past or throw to select
|
||||
EASTER_FOUND,Verstecktes Lager mit Spezial-Accessoires gefunden!,Hidden stash of special accessories found!
|
||||
TASK_1,Aufgabe 1,Task 1
|
||||
TASK_2,Aufgabe 2,Task 2
|
||||
TASK_3,Aufgabe 3,Task 3
|
||||
TASK_4,Aufgabe 4,Task 4
|
||||
TASK1_CONGRATS,"Glückwunsch!
|
||||
Die erste Aufgabe ist geschafft.","Congratulations!
|
||||
The first task is complete."
|
||||
TASK2_CONGRATS,"Glückwunsch!
|
||||
Die 2. Aufgabe ist geschafft.","Congratulations!
|
||||
The 2nd task is complete."
|
||||
TASK3_CONGRATS,"Glückwunsch!
|
||||
Die 3. Aufgabe ist geschafft.","Congratulations!
|
||||
The 3rd task is complete."
|
||||
TASK_CONGRATS_DEFAULT,"Glückwunsch!
|
||||
Aufgabe ist geschafft.","Congratulations!
|
||||
Task complete."
|
||||
TOPIC_AI_DEFS,Definitionen von KI,Definitions of AI
|
||||
TOPIC_AI_SYSTEMS,KI-Systeme,AI systems
|
||||
TOPIC_AI_RISKS,Risikostufen von KI,AI risk levels
|
||||
CONGRATS_REPEAT,"(Um die %s noch einmal nachzulesen, sprechen Sie mit ihrem Helfer)","(To reread the %s, talk to your helper)"
|
||||
HINT_ALIENS,"Wenn Sie weiterlaufen werden Ihnen einige Aliens begegnen. Sprechen Sie mit ihnen, um verschiedene Definitionen von Künstlicher Intelligenz (KI) kennenzulernen.",If you keep walking you will encounter some aliens. Talk to them to learn different definitions of artificial intelligence (AI).
|
||||
HINT_TALK_ALIENS,"[Enter] oder [t] drücken, um mit den Aliens zu reden",Press [Enter] or [t] to talk to the aliens
|
||||
HINT_THROW_CONTROLS,"Zielen mit der Maus, Klicken zum Werfen, [r] zum Wechsel zwischen Wurf- und Kameramodus","Aim with the mouse, click to throw, [r] to switch between throw and camera mode"
|
||||
HINT_THROW_ZONE,"Laufen Sie weiter zur Wurfzone.
|
||||
Dort angekommen, können Sie die Ballons abwerfen, um zu entdecken, in was für Systemen KI bereits eingesetzt wird bzw. werden kann.
|
||||
Sammeln Sie danach die Batterien, Sie werden sie im weiteren Verlauf benötigen.
|
||||
Zur Erinnerung: Zielen mit der Maus (Fadenkreuz) und Werfen durch Klicken. Wenn Sie kein Fadenkreuz sehen, evtl. [r] drücken, um den Modus zu wechseln.","Keep walking to the throw zone.
|
||||
Once there, you can pop the balloons to discover in which systems AI is already used or can be used.
|
||||
Then collect the batteries, you will need them later.
|
||||
Reminder: Aim with the mouse (crosshair) and throw by clicking. If you do not see a crosshair, try pressing [r] to switch modes."
|
||||
HINT_BATTERY_CONTROLS,"Auswahl der Batterien im Inventar [c], Einfügen mit [f] - ([e] zum wieder rausholen, [q] ablegen)","Select batteries in the inventory [c], insert with [f] - ([e] to take out again, [q] to drop)"
|
||||
HINT_COLLECT_BATTERIES,Sammeln Sie die Batterien auf (durch Vorbeilaufen) - einen Counter dazu sehen Sie oben links,Collect the batteries (by walking past them) - you can see a counter for this at the top left
|
||||
HINT_START_KEYPAD,[k] drücken zum Starten des nächsten Minispiels,Press [k] to start the next minigame
|
||||
HINT_ENTER_SHIP,Gehen Sie durch die Tür ins Raumschiff,Go through the door into the spaceship
|
||||
HINT_NEXT_TASK,In der nun folgenden Aufgabe...,In the following task...
|
||||
HINT_PRESS,...drücken,...press
|
||||
CHATBOT_DISCLAIMER,Bitte beachten: Sie sprechen mit einer künstlichen Intelligenz. Verlassen Sie sich nie auf die Antworten.,Please note: You are talking to an artificial intelligence. Never rely solely on the answers.
|
||||
CHATBOT_INTRO,Frag mich etwas zum EU AI Act und ich versuche es dir zu beantworten!,Ask me something about the EU AI Act and I will try to answer!
|
||||
CHATBOT_CHOOSE_CHAPTER,"Wähle ein Kapitel des EU AI Acts, zu dem du eine Frage hast:",Choose a chapter of the EU AI Act you want to ask about:
|
||||
CHATBOT_QUESTION,Frage:,Question:
|
||||
CHATBOT_QUESTION_PLACEHOLDER,Schreib hier deine Frage...,Write your question here...
|
||||
CHATBOT_ANSWER,Antwort,Answer
|
||||
CHATBOT_CLOSE,Schließen,Close
|
||||
CHATBOT_CH0,Kapitelübersicht und Kurzfassung,Chapter overview and summary
|
||||
CHATBOT_CH1,Erwägungsgründe,Recitals
|
||||
CHATBOT_CH2,Kapitel 1 - Allgemeine Bestimmungen,Chapter 1 - General provisions
|
||||
CHATBOT_CH3,Kapitel 2 - Verbotene Praktiken im KI-Bereich,Chapter 2 - Prohibited AI practices
|
||||
CHATBOT_CH4,Kapitel 3 - Hochrisiko-KI-Systeme,Chapter 3 - High-risk AI systems
|
||||
CHATBOT_CH5,Kapitel 4 - Transparenzpflichten für Anbieter und Betreiber bestimmter KI-Systeme,Chapter 4 - Transparency obligations for providers and deployers of certain AI systems
|
||||
CHATBOT_CH6,Kapitel 5 - KI-Modelle mit allgemeinem Verwendungszweck,Chapter 5 - General-purpose AI models
|
||||
CHATBOT_CH7,Kapitel 6 - Massnahmen zur Innovationsförderung,Chapter 6 - Measures to support innovation
|
||||
CHATBOT_CH8,Kapitel 7 - Governance,Chapter 7 - Governance
|
||||
CHATBOT_CH9,Kapitel 8 - EU-Datenbank für Hochrisiko-KI-Systeme,Chapter 8 - EU database for high-risk AI systems
|
||||
CHATBOT_CH10,"Kapitel 9 - Beobachtung nach dem Inverkehrbringen, Informationsaustausch und Marktüberwachung","Chapter 9 - Post-market monitoring, information sharing and market surveillance"
|
||||
CHATBOT_CH11,Kapitel 10 - Verhaltenskodizes und Leitlinien,Chapter 10 - Codes of conduct and guidelines
|
||||
CHATBOT_CH12,Kapitel 11 - Befugnisübertragung und Ausschussverfahren,Chapter 11 - Delegation of power and committee procedure
|
||||
CHATBOT_CH13,Kapitel 12 - Sanktionen,Chapter 12 - Penalties
|
||||
CHATBOT_CH14,Kapitel 13 - Schlussbestimmungen,Chapter 13 - Final provisions
|
||||
CHATBOT_CH15,Anhang,Annex
|
||||
CHATBOT_SYSTEM_PROMPT,"Antworte auf Deutsch. Antworte kurz und präzise in 1-2 Sätzen nur basierend auf dem bereitgestellten Dokument. Wenn die Antwort nicht im Dokument steht, antworte nur mit: 'Darauf kann ich nicht antworten, bitte stelle mir eine Frage zum EU AI Act'.","Answer in English. Answer briefly and precisely in 1-2 sentences based only on the provided document. If the answer is not in the document, reply only with: 'I cannot answer that, please ask me a question about the EU AI Act'."
|
||||
ALIEN_TALK,"Interagieren
|
||||
(t / Enter)","Interact
|
||||
(t / Enter)"
|
||||
KI-Schulung,KI-Schulung,AI Training
|
||||
|
@@ -0,0 +1,17 @@
|
||||
[remap]
|
||||
|
||||
importer="csv_translation"
|
||||
type="Translation"
|
||||
uid="uid://df8vw84keijdw"
|
||||
|
||||
[deps]
|
||||
|
||||
files=["res://translations/en_de_translation.de.translation", "res://translations/en_de_translation.en.translation"]
|
||||
|
||||
source_file="res://translations/en_de_translation.csv"
|
||||
dest_files=["res://translations/en_de_translation.de.translation", "res://translations/en_de_translation.en.translation"]
|
||||
|
||||
[params]
|
||||
|
||||
compress=true
|
||||
delimiter=0
|
||||
@@ -22,15 +22,13 @@ var turned = {
|
||||
}
|
||||
|
||||
var steps = [
|
||||
"Nutzen Sie die Pfeiltasten (oder a,s,d,w), um einmal in alle Richtungen zu laufen.
|
||||
Sie können sie bei längeren Strecken auch gedrückt halten.",
|
||||
"Mit der Leertaste können Sie springen.",
|
||||
"Durch Bewegen der Maus lässt sich die Kamera steuern. Mit [r] können Sie zwischen dem Kamera und Wurfmodus wechseln.",
|
||||
"Im Wurfmodus können Sie mit der Maus zielen und durch Klicken Bälle werfen (Sie sollten dabei ein Fadenkreuz sehen).
|
||||
Versuchen Sie, die Ballons zum platzen zu bringen.",
|
||||
"Um Objekte, wie z.B. die blauen Blöcke, aufzuheben, nutzen Sie die Taste [e] (sobald Sie nah genug davor stehen)",
|
||||
"Ablegen geht mit [q]",
|
||||
"Um mit anderen Lebewesen zu reden, drücken Sie [Enter] oder [t]."
|
||||
"TUTORIAL_STEP_0",
|
||||
"TUTORIAL_STEP_1",
|
||||
"TUTORIAL_STEP_2",
|
||||
"TUTORIAL_STEP_3",
|
||||
"TUTORIAL_STEP_4",
|
||||
"TUTORIAL_STEP_5",
|
||||
"TUTORIAL_STEP_6",
|
||||
]
|
||||
|
||||
func _ready():
|
||||
@@ -100,7 +98,7 @@ func next_step():
|
||||
|
||||
func update_label():
|
||||
if current_step < steps.size():
|
||||
label.text = steps[current_step]
|
||||
label.text = tr(steps[current_step])
|
||||
await get_tree().process_frame
|
||||
var text_size = label.get_minimum_size()
|
||||
$CanvasLayer/Panel.custom_minimum_size = text_size + Vector2(40, 40)
|
||||
|
||||