20

Making a Web-Based MMO in Your Attic With Shockwave

Embed Size (px)

DESCRIPTION

Making a Web-Based MMO in Your Attic With Shockwave. Introduction. 3D browser based fantasy MMO created in Shockwave Very small, independent cottage industry developer no funding started as a hobby attracts over a million unique monthly visitors revenue generated from banner ads - PowerPoint PPT Presentation

Citation preview

Page 1: Making a Web-Based MMO in Your Attic With Shockwave
Page 2: Making a Web-Based MMO in Your Attic With Shockwave

Making a Web-Based MMO in Your Attic With

Shockwave

Page 3: Making a Web-Based MMO in Your Attic With Shockwave

• 3D browser based fantasy MMO created in Shockwave

• Very small, independent cottage industry developer

• no funding

• started as a hobby

• attracts over a million unique monthly visitors

• revenue generated from banner ads

• independent of large portals or publishers

• MaidMarian.com and SherwoodDungeon.com represents about 60% of traffic

• Other multiplayer games: Tank Ball, Club Marian, Moon Base (One community with multiple experiences)

Introduction

Page 4: Making a Web-Based MMO in Your Attic With Shockwave

• casual / social fantasy MMO

• traditional hack-n-slash PVE with influences from Rogue

• no classes / no level cap

• infinitely deep dungeon

• six themed islands

• quests and merchants

• crafting system that uses runes and scrolls

• no emphasis on competition between players• XP levels don’t affect PVP

• pets and horses that purchased for real money (*new feature released this week)

Sherwood Dungeon

Page 5: Making a Web-Based MMO in Your Attic With Shockwave
Page 6: Making a Web-Based MMO in Your Attic With Shockwave
Page 7: Making a Web-Based MMO in Your Attic With Shockwave

Shockwave Penetration June 2008

• 59.2% in mature markets •U.S., Canada, UK, France, Germany and Japan

• 34.2% in emerging markets • China, S.Korea, Russia, India and Taiwan

• Flash's forgotten older bastard step-brother

• Flash doesn't do 3D (3D add on’s for Flash still fall short)

• Shockwave penetration rate higher than most other 3D browser technologies (like Unity)

• Java’s 3D technology also getting good in recent years

• worth considering

Shockwave

Page 8: Making a Web-Based MMO in Your Attic With Shockwave

Shockwave 3D

• Mac (Intel) and Windows (Vista / XP)

• DirectX7, DirectX9 and OpenGL

• Lingo or JavaScript syntax for scripting

• Solid first generation T&L 3D engine• No pixel / vertex shaders• No “next-gen” rendering features

• Exporters available from Maya / 3DS Max / Lightwave etc.

• I use Maya 7.0

• Excellent lossy compression scheme for:• Meshes• Skinned meshes with bones• Textures with embedded alpha• Animation

• Very small resulting file sizes

Page 9: Making a Web-Based MMO in Your Attic With Shockwave

Shockwave 3D – cont.

• Dynamic Lighting

• Directional, Ambient, Spot, Point lights

• CBV Lighting (baked lighting) is not supported by exporters but is accessible from code

• Textures

• variety of RGB formats (8888, 4444, 5551, etc.)

• text, video, flash, vector, bitmaps can be converted into textures at run-time

• Director’s Imaging Lingo very fast and useful for 3D

• blur, bevel, glow, drop shadow, HSV, perlin noise added to Director 11

Page 10: Making a Web-Based MMO in Your Attic With Shockwave

Shockwave 3D – cont.

• Shaders

• specular, emissive, shininess, diffuse, ambient attributes

• Up to 8 layers of texture (Blend, multiply, subtract, replace)

• useDiffuseWithTexture very useful in Sherwood

• Model resources (meshes)

• weighted skin with bones or static meshes• Sherwood Avatars: 3500 polys (tris)• 4 Skin weights, 26 bones, ~1000 anim frames

• create your own model resources with lingo( Height mapping / CBV lighting )

• Groups and Models (easy instancing)

Page 11: Making a Web-Based MMO in Your Attic With Shockwave

Shockwave 3D – cont.

• Automatic LOD Modifier (Level of Detail)

• Progressive Mesh reduces polygon count of a model based on distance from the 3D camera

• Great for performance

• Mesh Deform Modifier

• Allows you to alter an existing model resource’s geometry at runtime. (Vertex and normal information)

• Ray Casting

• Works well, but you need to optimize

• Don’t cast straight down - vector(.001,-.999,.001)

• If using Ageia PhysX Xtra, use it’s raycaster instead

• potentially 5-10 times faster

Page 12: Making a Web-Based MMO in Your Attic With Shockwave

Shockwave 3D – cont.

• Vector Math Stuff• normalize, pointAt, dotProduct, angleBetween,

crossProduct, distanceTo, getWorldTransform, etc.

• Cameras• All the usual stuff plus:

• Overlays (HUD User interface elements)• worldSpaceToSpriteSpace

• Animation• Bones player• Animation Blending• Play lists and animation queue

• Undocumented features• Director / Shockwave has many• member().fileSaveMode=#saveAll

• Useful for art builds and optimization routines

Page 13: Making a Web-Based MMO in Your Attic With Shockwave

Physics Xtra

• Ageia PhysX replaces Havok Xtra for Director 11

• Xtras install automatically but not part of initial install.

• Physics, MMOs and Latency – very tricky combination

• I faked it with Tank Ball, but with compromises

•Rigid bodies / Collision detection• static concave, convex hull, box, sphere• Terrains

• Constraints• Springs• Linear Joint or Constraint• Angular Joint or Constraint • 6 DOF joints

• RayCasting

Page 14: Making a Web-Based MMO in Your Attic With Shockwave

Multi User Solutions

• MUS Xtra (Client side Multiuser Xtra)• Binary protocol developed for the SMUS• Supports Blowfish-like packet encryption• Supports Peer-to-Peer connections

• SMUS (Shockwave Multiuser Server)• discontinued with Director MX 2004, but still used• Server side scripting and database functionality• 2000 simultaneous players – but can be slow• Hacker vulnerable for larger games

• Smart Fox Server• Uses embedded Flash movie• Most popular solution lately - Worth a serious look

• MMMUS (Maid Marian Multiuser Server – our solution)

• in-house proprietary solution• SMUS-like, but written in C# (. net)• SQL Server 2005 / Microsoft Membership libs• Hacker resistant (packet validation, anti-flood)

Page 15: Making a Web-Based MMO in Your Attic With Shockwave

Sherwood Tech Stuff

• How does one person make enough content for an MMO?

• How do you keep it small enough to run in the browser?

• Our approach? • Procedural Content or • Forced seed randomized content

• Use the random seed like a database index for:• Dungeon digger / Maze generator• Randomized height map / Island generator• Quest generator / Item generator, etc.

• Same approach as Rogue-type games used in the 80s

• Faster than loading or streaming • virtually instant retrieval of a zone or area

• Sherwood Dungeon Shockwave client only 2.7mb • less than 2 floppy disks

Page 16: Making a Web-Based MMO in Your Attic With Shockwave

Tech Stuff cont.

• Procedural / Randomized Content cont.

• Forces you into a different workflow

• Updates to generators ripple through all content

(As a former Technical Art Director, I love this.)

• Allow you to stay ahead of users

• Best when smartly layered with designed content

(I’m not so good at this yet)

• A-Star path finding data generated at the same time

• Grey Scale Textures

• 90% of Sherwood textures are gray scale / BW with color applied at runtime

• Allows for constant reuse

Page 17: Making a Web-Based MMO in Your Attic With Shockwave

Business Model

• We’re fiercely independent ( too independent ?)• No work for hire, No licensing• IP is retained - No publisher or outside funding• But we’re nice about it and will talk to anyone

• Not really into that “angry independent” thing.

•Banner ads

• Under game ads perform at 4% click through• Reasonably good CPMs• Various ad networks • No in house sales

• Any site welcome to embed Sherwood with IFRAME• As long as they show our ads• 100s of smaller game sites collectively represent a viral distribution network• Linking site can monetize other space on the page

• New! Launching Pets and Mounts in Sherwood this month.

• Sold on an RMT model ($5 a pet for one years use)• This is a BIG change for us ! (baby steps first)

Page 18: Making a Web-Based MMO in Your Attic With Shockwave
Page 19: Making a Web-Based MMO in Your Attic With Shockwave

Sherwood History

• Started as a hobby in 2000 (Sherwood launched 2003)

• Inspired by Dungeons & Dreamers• Richard Garriot and other solo game developers

• No master feature list or minimum scope• Only knew what the next feature was• vague idea of what I wanted

• Players knew from day one that this was an experiment

• kept coming back just to see what I added• traffic grew organically

• First guild appeared in 2003 (Black Death) • No guild features in the game – emerged organically• Sherwood full of guilds, clans, orders • Many guild sites, trick and tips, fan sites

• Players complained when swords starting doing damage

• more about "Play or Pretend fighting“

Page 20: Making a Web-Based MMO in Your Attic With Shockwave

Questions?

[email protected]

MaidMarian.comSherwoodDungeon.com