Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ophelia User-friendly Network Multi-player Game Engine Albert Öhrling.

Similar presentations


Presentation on theme: "Ophelia User-friendly Network Multi-player Game Engine Albert Öhrling."— Presentation transcript:

1 Ophelia User-friendly Network Multi-player Game Engine Albert Öhrling

2 Project Goals To create a game engine for networked multiplayer games.

3 Project Goals To create a game engine for networked multiplayer games. It will be possible to program games as if they were local multiplayer titles.

4 Project Goals To create a game engine for networked multiplayer games. It will be possible to program games as if they were local multiplayer titles. The engine is accessed from a user-friendly interface.

5 Requirements A set of basic systems to create games from.

6 Requirements A set of basic systems to create games from. Object Management

7 Requirements A set of basic systems to create games from. Object Management Messaging

8 Requirements A set of basic systems to create games from. Object Management Messaging Graphics

9 Requirements A set of basic systems to create games from. Object Management Messaging Graphics Input

10 Requirements A set of basic systems to create games from. Object Management Messaging Graphics Input Movement

11 Requirements A set of basic systems to create games from. Object Management Messaging Graphics Input Movement Collision Detection

12 Requirements A set of basic systems to create games from. A suitable test environment

13 Requirements A set of basic systems to create games from. A suitable test environment A set of useful development tools

14 Development Tools

15 Architecture

16 Event-Driven Design Game modules communicate with events and callbacks.

17 Event-Driven Design Game modules communicate with events and callbacks. All custom scripts are invoked on events.

18 Objects Game Objects are modular

19 Objects Game Objects are modular

20 Objects Game Objects are modular Game Object are malleable

21 Objects Game Objects are modular Game Object are malleable Developers can define their own templates

22 Objects Game Objects are modular Game Object are malleable Developers can define their own templates Developers can define their own feature modules

23 Synchronization Game state synchronization is invisible

24 Synchronization Game state synchronization is invisible Achieved with custom setters

25 Synchronization Game state synchronization is invisible Achieved with custom setters

26 Synchronization Game state synchronization is invisible Achieved with custom setters Only update game state when the server notifies the client.

27 Synchronization Game state synchronization is invisible Achieved with custom setters Only update game state when the server notifies the client.

28 Problem Developers have to pay attention to on which machines their scripts execute.

29 Solution

30 Synchronization changes

31 Solution Synchronization changes

32 Problem Sending messages at the same time does not guarantee that they arrive simultaneously.

33 Solution Batch state changes that occur in the same update tick.

34 Solution Batch state changes that occur in the same update tick. Distribute them to the clients as a single message when the next tick begins.

35 Project Goals To create a game engine for networked multiplayer games.

36 Project Goals To create a game engine for networked multiplayer games. Success!

37 Project Goals To create a game engine for networked multiplayer games. Success! It will be possible to program games as if they were local multiplayer titles.

38 Project Goals To create a game engine for networked multiplayer games. Success! It will be possible to program games as if they were local multiplayer titles. Success!

39 Project Goals To create a game engine for networked multiplayer games. Success! It will be possible to program games as if they were local multiplayer titles. Success! The engine is accessed from a user-friendly interface.

40 Project Goals To create a game engine for networked multiplayer games. Success! It will be possible to program games as if they were local multiplayer titles. Success! The engine is accessed from a user-friendly interface. Success!

41 Example

42

43

44

45

46

47

48 Evaluation All design goals were met.

49 Evaluation All design goals were met. Most importantly; making games with the engine is easy.

50 Evaluation All design goals were met. Most importantly; making games with the engine is easy. When problems arose I was able to solve them with good tools.

51 Evaluation All design goals were met. Most importantly; making games with the engine is easy. When problems arose I was able to solve them with good tools. Testing in a real environment would have been nice.

52 Questions?


Download ppt "Ophelia User-friendly Network Multi-player Game Engine Albert Öhrling."

Similar presentations


Ads by Google