Immerse yourself in your favorite media and share with your friends by personalizing 3D worlds with your favorite stuff.

Report article RSS Feed SM Arcade BETA 1 Design Overview

This article is meant to give developers an understanding of the over-all structure of SM Arcade. It focuses on features that will play the largest roll in future versions of the mod, and how BETA 1's style of game play will fit into it all. It is intended for people who already have at least a general knowledge of the released BETA 1 version.

Posted by SM_Sith_Lord on Dec 14th, 2010
Article

Design Overview

At its core, this beta version of the mod is a 3D shortcut launching application.  While BETA 1 is singleplayer only, the mod's design is centered around multiplayer use.  Both dedicated and small peer-hosted multiplayer modes are intended to be supported.

Singleplayer

Singleplayer mode is used to customize maps by placing a variety of 3D shortcuts who's skins and textures are dynamically selected according to the user's settings.  As far as the back-end is concerned, these shortcuts are the same as a standard Windows shortcut.  They could launch anything ranging from a local application to an internet hyper-link.  The arrangement of these shortcuts in the game world can be saved to a configuration file that can easily be distributed to other players.  The resources that the 3D shortcuts reference can also be distributed along with these configuration files.

FIGURE 1 - ARRANGEMENT EXAMPLE

code:
"object27"
{
    "origin"        "657 922 -269"
    "angles"        "0 -92 0"
    "ItemList"        "Ubisoft Games"
    "ItemName"        "Splinter Cell: Conviction"
}

FIGURE 1 shows an entry for the game "Splinter Cell: Conviction" from an arrangement file.  Items referenced in this file are ambigious and need to be resolved to actual file locations on the end-user's computer.

While it is possible to distribute the resources referenced along with the configuration file, it is more likely that the end-user will already have many of the files referenced.  A smarter design model is to allow the mod to check if the needed resources already exist on the end-user's computer before attempting to acquire them via internet connectivity.  Although BETA 1 lacks any form of internet connectivity, it is built around this deisgn model.  It keeps a clear distinction between references to a file and the file itself.  This is especially important because SM Arcade's main function is launching games, and the install directory of a game's executable varies greatly from user to user.  For example, the end-user's mod will have a higher chance of placing the correct item if the configuration file references a game as "Jedi Knight" instead of "C:/My Games/Jedi Knight/JK.exe".

This level of ambiguity is implemented through the use of *item list* files with the extension "UGL".  These *item lists* are like mini-media libraries.  They contain detailed information about every item specified within them.  The items are filed under simple, ambigious, names such as "Jedi Knight" or "Minesweeper".  The important details for each item, such as the file location and launch options, are stored under these simple headings.  These details can be customized for each user to reflect their correct locations and preferences.

FIGURE 2 - ITEM EXAMPLE

code:
"Splinter Cell: Conviction"
{
    "filename"    "X:\Installed Programs\Tom Clancy's Splinter Cell Conviction\src\system\conviction_game.exe"
    "type"        "GamesForWindows"
}

FIGURE 2 shows an Item entry for the game "Splinter Cell: Conviction".  Its type is defined as "GamesForWindows".  SM Arcade uses this information to locate the correct resources to represent this game's 3D shortcut in the world.

Multiplayer

Multiplayer mode will be an extension of this design where all clients will be using the same *item list* as the server.  The consistency of the game world of each server can present an interesting virtual arcade feel and also encourage server admins to keep the content on their servers fresh and up-to-date.  Multiplayer mode is not expected to be functional in Source Media Arcade until BETA 2.

Script-Expandable

An important feature of SM Arcade is its ability to be expanded to include user-defined content.  This is accomplished through the use of plain text script files that define how each Item is to behave within the mod.  They control everything from the Item's visual representation in the game world to the commands that are executed when the Item is launched.

The BETA 1 version of the mod includes script files that add enhanced support for Steam games.  These script-powered features include a game library index complete with screenshot and art images for each Steam game, the automatic renaming of detected Steam games to match their titles in the index, and advanced filtering options when detecting games such as the ability to ignore duplicate or unplayable Steam games.

This enhanced support can be added for ANY custom application when the proper script files are used.

Multiplayer Community Integration

The mod's design is centered around multiplayer, and the primary use of singleplayer will be merely to arrange 3D shortcuts in the game world to create config files for multiplayer.  Soon the mod will be able to obtain these arrangements and ItemLists via HTTP; enhancing the mod's abilities for arcade-server/community-website integration.

Acquiring Missing Media

The BETA 1 version of the mod already has the ability to download or purchase any missing Steam game from the Steam store.  Improvements to the mod's back-end will expand this functionality to be able to use user-defined sites or stores to acquire ANY type of missing game.

Keeping It Simple

The majority of SM Arcade's functionality happens behind the scenes; out of the user's view.  This is done to keep the user's experience as simple and enjoyable as possible.

The User Experience

The standard user experience of SM Arcade will be nothing more than a 3D multiplayer gaming lobby complete with comical chat and very intuitive match making, where EVERYTHING is represented by physical objects.  The following Gmod comic depicts the mod's intended gameplay...

Source Media Arcade Version 2 Comic
Source Media Arcade Version 2 Comic
Source Media Arcade Version 2 Comic
Source Media Arcade Version 2 Comic
Source Media Arcade Version 2 Comic
Source Media Arcade Version 2 Comic
Source Media Arcade Version 2 Comic

Joining The SM Arcade Development Team

With BETA 1 already publicly tested for over a month, work is soon to resume on Source Media Arcade.  There are many prestigious positions waiting to be filled such as Lead Programmer or Lead Art Designer.  Watch the ModDB profile for information on how to apply.

Post comment Comments
weasle
weasle Dec 15 2010, 4:45pm says:

Awesome, really looking forward to the multiplayer. Love this mod it adds a lot of atmosphere to my everyday computer life.

+1 vote     reply to comment
Post a Comment
click to sign in

You are not logged in, your comment will be anonymous unless you join the community today (totally free - or sign in with your social account on the right) which we encourage all contributors to do.

2000 characters limit; HTML formatting and smileys are not supported - text only

Icon
Half-Life 2 Icon
Platform
Windows
Developed By
SM_Sith_Lord
Contact
Send Message
Official Page
Smarcade.net
Release Date
Released Oct 18, 2010
Mod Watch
Track this mod
Feature
Browse
Features
Report Abuse
Report article
Related Mods
SMAR•CADE: Anarchy Edition (Half-Life 2)
SMAR•CADE: Anarchy Edition Half-Life 2 - Single & Multiplayer Party
Related Games
Half-Life 2
Half-Life 2 Single & Multiplayer First Person Shooter