Emergency 4 v1.3 Patch
- Stellt die Kompatibilität zu Emergency 4 Deluxe sicher. Installiert zu dem Zweck einige Dateien, die von EM4 nicht direkt benötigt werden
- SuperVisor-Videos können in Mods ersetzt werden
- Anhängerlogik hinzugefügt
- Mehrere ExitPoints möglich, nächst gelegener wird angefahren
- Separate ExitPoints pro Fahrzeugtyp möglich
- Lichter von SuperStructs werden geupdatet (mitbewegt)
- Eigene Decals im Mod möglich
- Fahrzeug, welches wegen Einsatzfahrzeug stoppt, wartet nun länger
- Anzeige für verbleibende Verletzte kann auf beliebigen Counter geändert werden
- Absturz bei Childeditierung behoben
- Partikelchilds von Objekten die gerade per Physik bewegt werden, werden nun korrekt mitbewegt
- GTF mit weniger als 4 Schlauchanschlüssen sollte im MP keinen Absturz mehr erzeugen
- Tastenbelegung über XML-Datei (Specs/keys.xml) frei umbelegbar; Datei wird bei Modwechsel neu geladen
- Quasi beliebige Events per Script zur Eventliste hinzufügbar und auch als abgeschlossen/fehlgeschlagen markierbar
- Per Startparameter kann direkt ein Mod gestartet werden, sowohl im Game als auch Editor (-game -mod ModName oder -editor -mod ModName)
- Beim Start des FP/MP wird je nach Modus ein Script ausgeführt, wenn vorhanden (mod:Scripts/Game/Mission/fp_freeplay.script, mod:Scripts/Game/Mission/fp_challenge.script, mod:Scripts/Game/Mission/mp_freeplay.script, mod:Scripts/Game/Mission/mp_challenge.script)
- In der e4mod.info-Datei eines Mods kann die minimale Version von EM4 eingestellt werden, die nötig ist, um den Mod zu spielen
- Anzeige der EM4-Versionsnummer im Hauptmenü
- Dialoge, welche per Script erzeugt wurden, werden nun bei Pause, im Hauptmenü usw, ausgeblendet
- FGRR (Kran) hebt nicht mehr das FMB an, wenn es sich in dem Bereich eines Wracks befindet
- Skinnen nun wieder so einfach wie in EM3 (Textur ersetzen genügt; Es ist nicht mehr nötig die v3o zu bearbeiten)
- Beim Texturimport im Editor erscheint eine Fehlermeldung, wenn das Format nicht stimmt
- Dicke des Wasserstrahls von TLF, LPF und FLB per Script pro Fahrzeug veränderbar
- Per Script Fahrzeugtüren öffnen/schliessen über den Namen der Tür möglich
- Im Prototypeditor gibts neben den "Browse"-Buttons für die Modelle nun noch einen "Edit"-Button. Dieser entpackt das Modellfile automatisch und öffnet es dann zum Editieren im Wordpad.
- ALT+1 bis 6 selektiert die entsprechende Gruppe ohne die Kamera darauf zu zentrieren
- Defaultbesatzungen mit mehr als einer Einheit pro Typ werden nun korrekt angezeigt
- Kleinere Optimierungen der Ladezeit und Performance
- Events, welche sofort fehlschlagen, sollten nun seltener/gar nicht mehr auftreten
- Editierung von einigen Objekten mit Physik korrigiert
- Gasflaschen im Tutorial sind nicht mehr beschiesbar
- Darstellung des Bloomeffektes verbessert
- Einige neue Funktionen im Editor (Editierung für die Sprachsteuerung; Staubwolken von Fahrzeugen in virtuellen Objekten; 2 neue Liquids)
- Problem mit der Kamera in Zusammenhang mit Liquids behoben
- Fehler in der Object-Overview beim Anklicken von Partikel-Effekten behoben
- Absturz bei Pfadeditierung behoben
- Absturz im Zusammenhang mit Speicherkorruption wird nun erkannt und behoben


scripting:

- Neue Funktionen
void Camera::StartCamShake(float duration_, float strength_, bool localOnly_ = true);
float FireObject::GetEnergy() const;
void FireObject::SetEnergy(float energy_);
int Game::GetNumInjuredPersonNotOnTransport(bool ignoreDead_ = false);
void Game::SetNavigatorCounter(const char* counter_);
const Game::char* GetNavigatorCounter();
bool Game::ExistsPickableAnimal();
bool Game::GetGameString(const char *name_, char *buffer_, int maxcount_);
bool Game::IsHomicideEventRunning();
int Game::GetMaxParkingSpace();
void Game::SetMaxParkingSpace(int space_);
float Game::GetGlobalEventFrequencyFactor();
void Game::SetGlobalEventFrequencyFactor(float factor_);
float Game::GetTimeActivePlayerSwitchMP();
void Game::SetTimeActivePlayerSwitchMP(float time_);
int Game::ShowEvent(const char* Text_, Vector Position_); // returns ID of the event
bool Game::SetEventFinished(int eventID_, bool succesful_, int reward_);
bool Game::IsPositionAcceptable(Vector Position_);
bool GameObject::IsCommandable() const;
void GameObject::PauseParticleEffect();
void GameObject::ResumeParticleEffect();
void GameObject::PauseParticleEffectChild(const char *name_);
GameObjectList GameObject::GetObjectsWithNameInRange(float radius_, const char* name_, int filter_ = ACTOR_OBJECT | ACTOR_PERSON | ACTOR_VEHICLE | ACTOR_HOUSE | ACTOR_OPEN_HOUSE);
Vector GameObject::GetChildPosition(const char* name_) const;
void GameObject::SetEffect(const char* effect_, const char* params_);
void GameObject::PushActionShoot(ActionInsertMode Mode_, int TargetID_);
void GameObject::PushActionUsePath(ActionInsertMode Mode_, const char *Path_, float Speed_ = 0.f, bool forward_ = true);
void GameObject::PushActionUsePath(ActionInsertMode Mode_, Path *Path_, bool Forward_, float Speed_ = 0.f, bool forceUseRF_ = false);
void GameObject::PushActionScoutArea(ActionInsertMode Mode_);
void GameObject::PushActionCheckVictim(ActionInsertMode Mode_, Person *Person_, float WaitTime_);
void GameObject::AttachSound(int soundRef_);
void GameObject::UnattachSound(int soundRef_);
bool Input::LShiftPressed();
bool Input::RShiftPressed();
bool Input::LCtrlPressed();
bool Input::RCtrlPressed();
void ScriptInterface::HideMouseCursor(bool hide_);
int OpenHouse::GetChildID(int groupID_) const;
void OpenHouse::UpdateOpenCloseState();
bool Person::IsInSight(int TargetID_) const;
void Person::Carried(bool carried_, bool hide_, GameObject *carrier_ = NULL);
void Person::SetSpreadAngle(float angle_);
void Person::SetSightAngle(float angle_);
bool Person::IsCarWithPrefixInRange(float radius, const char* prefix, int &id);
bool Person::GetDisableGangsterSymbol();
void Person::SetDisableGangsterSymbol(bool disable_);
void Person::SetDogPerceptionRange(float range_);
float Person::GetDogPerceptionRange();
void Person::SetUpgradeLevel(int level_);
int Person::GetUpgradeLevel() const;
bool Person::IsVictim() const;
void Vehicle::SetMaxEnergy(float energy_);
void Vehicle::PlayAnimOpenDoor(const char *name_, float time_, GameObject *Caller_=NULL);
void Vehicle::PlayAnimCloseDoor(const char *name_, float time_, GameObject *Caller_=NULL);
int Vehicle::GetNumUsedConnectors() const;
bool Vehicle::RemoveTrainWaggon(GameObject *waggon_);
int Vehicle::GetNumTrainWaggons();
void Vehicle::SetWaterStreamStartWidth(float width_);
float Vehicle::GetWaterStreamStartWidth() const;
void Vehicle::SetWaterStreamEndWidth(float width_);
float Vehicle::GetWaterStreamEndWidth() const;
void Weather::SetHail(bool hail_);
bool Weather::GetHail();

-Neue Konstanten
RESTRICT2_CANBEPICKEDUP in CommandRestriction2
EQUIP_DUMMYRIFLE in EquipmentType
PLACEMENT_ALIGNED_CORNERS_FLOOR in FloorPlacement
BEHAVIOUR_CIVILIAN_ZOMBIE in PersonBehaviour

Bekannte Probleme:
- Die Datei mit der Tastenbelegung (Specs/keys.xml) wird nach Änderungen untersucht, wenn ihr MP spielen wollt. Änderungen an der Datei verhindern also die Teilnahme am MP!
DEMOS
PATCHES - CHEATS
REVIEWS
GAME VIDEOS
NEWS ENTRIES
THIS WEEK'S MOST POPULAR DOWNLOADS