# Einstieg: new\_game

Die[ new\_game()](https://docs.settlers-united.com/s4-lua-api-de/library-functions/global-functions/new_game) Funktion ist der Haupteinstiegspunkt jedes Mapscripts. Neben [register\_functions()](https://docs.settlers-united.com/s4-lua-api-de/library-functions/global-functions/register_functions) ist dies die einzige Methode, welche vom S4 Spiel selbst direkt aufgerufen wird. (Hier wird der globale Bereich mal abgesehen, da der immer ausgeführt wird)\
\
**Beispiel: Was wird ausgeführt?**

```lua
function new_game()
    dbg.stm("Ja, new_game wird vom Spiel aufgerufen")
end
function register_functions()
    dbg.stm("Ja, register_functions wird vom Spiel aufgerufen")
end

function eineAndereFunktion()
    dbg.stm("Nein, andere Funktionen werden vom Spiel nicht aufgerufen")
end

function noch_eine_andere_funktion()
    dbg.stm("Nein, andere Funktionen werden vom Spiel nicht aufgerufen")
end

dbg.stm("Ja, der globale Bereich wird vom Spiel aufgerufen!") -- nicht schön!!!
```

Beim Spielstart sieht die Konsole möglicherweise so aus\ <img src="https://web.archive.org/web/20200829133418im_/https://i.imgur.com/dUluw2S.png" alt="" data-size="original">\
Nach dem Laden des Spielstandes:\ <img src="https://web.archive.org/web/20200829133418im_/https://i.imgur.com/8G8gZ5n.png" alt="" data-size="original"><br>

## **Funktionskriterien**

\
In Lua ist es relativ egal, wie man eine Funktion nennt, das Hauptkriterium ist, dass der Name nicht mit einer Zahl anfängt und keine ä,ö,ü,ß Umlaute enthält.&#x20;

```lua
function 2Fähler() 
   -- Das ganze Skript wird nicht Funktionieren und Siedler IV gibt keine Fehlermeldung aus!
end
```

Aber **bei Einstiegspunkten muss der Name übereinstimmen**, da das Spiel nur diese Funktionen aufruft.

## **Fazit**

Wie ihr seht ist der globale Bereich nicht sehr gut zum Skripte schreiben, weshalb das Modularisieren mit Funktionen immer die bessere Alternative ist.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.settlers-united.com/s4-lua-api-de/tutorials/aller-anfang/entrypoint-new_game.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
