In this talk, the games made by Odencat will be showcased, and it'll be explained how the studio has grown with Ebitengine. You'll learn a hint to creating a successful game library and the strategy to build a game studio from scratch.
How We Won Gamedev By Rolling Our Own Tech (no notes)Mihai Gosa
Did you know you can make successful games faster, cheaper and more reliable by building your own tech instead of using a third party engine?
With a small team and no budget, we managed to make 2014's best tactics game (Door Kickers) in a very short time, with a huge amount of content, on 5 platforms.
Without using any third-party engines or tools.
Instead of adding tech, we removed tech. We kept removing until there was almost nothing left. Sounds counter-intuitive? Think of it this way: simpler means faster, cheaper and more reliable.
Learn about the extreme simplicity of the production pipeline and the "unified everything" game engine used for Door Kickers.
Learn that developing a game can also be done in a very smart and simple way, instead of spending years or $$$$$ on game engines. Learn how to focus on what is important and that finding the simplest solutions is usually the hardest.
So you (think you) want to work in video gamesSven Charleer
This document discusses getting into the video game industry and indie game development. It provides an overview of different paths such as working for a large studio, getting experience through internships and side projects, and pursuing indie game development. The document also shares a post-mortem of a small indie game project called Bloodlust that was developed independently over 4 weekends by a small team. It discusses the development process, marketing, and sales results of the game. Overall, the document provides advice on breaking into the game industry through various entry points and strategies.
How We Won Gamedev By Rolling Our Own Tech (no notes)Mihai Gosa
Did you know you can make successful games faster, cheaper and more reliable by building your own tech instead of using a third party engine?
With a small team and no budget, we managed to make 2014's best tactics game (Door Kickers) in a very short time, with a huge amount of content, on 5 platforms.
Without using any third-party engines or tools.
Instead of adding tech, we removed tech. We kept removing until there was almost nothing left. Sounds counter-intuitive? Think of it this way: simpler means faster, cheaper and more reliable.
Learn about the extreme simplicity of the production pipeline and the "unified everything" game engine used for Door Kickers.
Learn that developing a game can also be done in a very smart and simple way, instead of spending years or $$$$$ on game engines. Learn how to focus on what is important and that finding the simplest solutions is usually the hardest.
So you (think you) want to work in video gamesSven Charleer
This document discusses getting into the video game industry and indie game development. It provides an overview of different paths such as working for a large studio, getting experience through internships and side projects, and pursuing indie game development. The document also shares a post-mortem of a small indie game project called Bloodlust that was developed independently over 4 weekends by a small team. It discusses the development process, marketing, and sales results of the game. Overall, the document provides advice on breaking into the game industry through various entry points and strategies.
This document provides an introduction to game development, covering areas like programming, game design, art, and other disciplines. It discusses challenges in the industry, differences between academia and professional game development. It also introduces the Unity game engine, covering platforms, programming, UI, plugins, and the asset store. The document concludes by offering suggestions for aspiring game developers, like maintaining a blog, focusing on one's portfolio, being part of the community, and practicing constantly.
DSC RNGPIT - Getting Started with Game Development Day 1DeepMevada1
DSC RNGPIT had organized a session on Game Development where students where introduced to the basics of Game Development and the Unity Game Engine Interface.
Students were also introduced to the game development flowchart where an example of Flappy Bird was given, and were also given a task to make flowcharts for their games.
This document outlines Tofanyou Inc's plans for a new mobile strategy game that incorporates social and microtransaction elements. It summarizes the game mechanics, Tofanyou's experience and team, marketing strategies including social media integration, monetization through microtransactions, expected revenue of $200,000 per month, a development cost of $350,000, and an exit strategy for investors once revenue turns positive.
Francois Laberge is the cofounder of Brass Monkey, a company developing a mobile app called Emotely that turns phones and tablets into wireless controllers. Emotely allows for classic couch multiplayer gaming by enabling phones and tablets to control games running in a browser from the comfort of the couch without any installation required on PCs. The Emotely SDK also makes it easy for developers to add multiplayer capabilities and innovative input methods to their own games.
This document outlines an introductory workshop on creating video games using Python. The workshop will cover topics like scriptwriting, storyboarding, and coding over 8 segments of around 20 minutes each. Attendees are encouraged to bring both creativity and curiosity for questions. The goal is to foster the local gaming community and help more people start making games by providing guidance on the process from concept to coding.
Mobile game design: What makes it different?Devin Becker
Part of a class on mobile game design about what makes it different from game design for other platforms. Intended to get you thinking about all the differences and how they impact your designs so you aren't surprised!
The 8 steps to create a board game on Board Game ArenaBoard Game Arena
The 8 steps to create a board game on Board Game Arena are:
1. Volunteer to join the developer team and choose a game to adapt.
2. Develop your game using the online Studio environment and resources provided.
3. Test your game extensively online with other players.
4. Submit your game for review by the BGA team and game publisher.
5. If approved, the game launches in a "silent launch" period with limited players.
6. Following bug fixes, the game enters a beta phase open to all players.
7. Once stable, the game is fully launched on BGA.
The document provides guidelines for developers adapting board games to the Board Game Arena (BGA) platform. The guidelines cover game layout, usability, accuracy to the original game, and technical quality. Key recommendations include using the original game art, ensuring fidelity to original rules, providing intuitive interfaces, and writing code in clear English. The guidelines aim to help games be easily understood by players and approved by publishers for the BGA platform.
Jakarta XR Meetup 13 | Digital Happiness deckNico Alyus
1. Digital Happiness is an independent game studio from Indonesia that released their first VR title DreadEyeVR in 2017.
2. Their initial concept for DreadEyeVR involved passive gameplay where the player experiences a nightmare sequence, but they realized VR requires interactivity.
3. They pivoted to an interactive concept where the player is a shaman crafting ingredients to summon spirits through rituals, with gameplay and narrative connected through a hub world.
Runs for Ayothaya is an infinite running game played using Kinect for exercise. The game has various stages of increasing difficulty where the player controls a character to run, dodge obstacles, and collect gems and items. A mobile app tracks real running distances and converts it to in-game points to purchase equipment upgrades. The top scores are displayed on the rankings screen. Gameplay involves navigating menus with hand gestures or buttons to select stages and control the character through running, jumping, and sliding motions.
Kodu Together: Video Game Programming & PublishingNick Tanzi
Imagine the possibilities when you combine coding with video game design. Kodu is free software featuring a visual programming language appropriate for both young children and young adults. It can be used to create video games and to publish them online. Take a tour of the software, learn how to get started, and examine best practices. Discover flexible options for introducing a wide range of ages to coding and video game design.
This document discusses three potential projects:
1) An app called "Lost in the Store" to help customers find items in stores like Walmart and Target. It would provide directions to items and compare prices.
2) A music-based rhythm game called "Midi Fighter Game" that uses a Midi Fighter controller. It would include a practice mode with downloadable soundpacks and a marketplace for artists.
3) Opening a branch of the game design school Pyramind in India through a collaboration with an existing gaming company and film sound design studio. This could enroll many students given India's large population and cheaper costs than San Francisco.
This document discusses using Python for game development. It covers what Python is as a programming language and some of its key advantages for games, such as being easy to learn and write. It also outlines some of the major components inside games, including graphics, input control, game logic, and sound. Finally, it recommends several Python libraries that are useful for games, such as Pygame and NumPy, and lists some popular games that were developed using Python.
This document describes a Windows platform game called Street Runner. The game is inspired by Subway Surfer and Temple Run. It allows the player to control a character who runs endlessly, collecting powerups and avoiding obstacles. The document outlines the game's details, algorithms, menus, scoring, and technical implementation using Unity 3D and other tools. It was created by students to demonstrate basic game development concepts and provide entertainment on Windows PCs with minimal requirements.
This document provides an introduction to game development. It defines what a video game is as an electronic game involving user interaction and visual feedback. Game development draws from many fields including business, art, science and technology. The document outlines some of the many roles involved in game development. It traces the growth of the video game industry from early classics to modern 3D games. It then presents several popular game engines as tools that developers can use to build games, avoiding writing code from scratch. The document encourages creativity beyond what engines can do directly and emphasizes good coding practices like avoiding spaghetti code and refactoring. It introduces GameLab as aiming to spread knowledge about game development through small project-based seminars.
The importance of just-in-time operation of social gamesaction.vn
This document discusses the importance of just-in-time operation for social games. It emphasizes blazing through the PDCA (plan-do-check-act) cycle on a daily basis by using user data to plan adjustments, implementing changes, checking results, and acting to begin the next cycle. Key aspects of operation include optimizing user stress levels, segmenting users, and running frequent in-game events to drive sales. Sales are broken down into key performance indicators like installations, retention rate, pay rate, and average revenue per paying user that must each be improved to increase overall revenue.
OGDC2012 Just-in-time Operation in Social Games_Mr.Eiji Okuda_GlooopsBuff Nguyen
This document discusses the importance of just-in-time operation for social games. It emphasizes blazing through the PDCA (plan-do-check-act) cycle on a daily basis by using user data to plan adjustments, implementing changes, checking results, and acting by starting the next cycle. Key aspects of operation include managing user stress levels by adjusting difficulty, holding regular in-game events, and segmenting and targeting different types of users. Success relies on breaking down sales into key performance indicators like installations, retention, payment rates, and average revenue per user.
iPad Game Design -- Develop Liverpool Dec' 2011garethjenkins
The document discusses key differences in designing games for the iPad versus other mobile devices like phones. It notes that iPad games should take advantage of the larger screen size by allowing the entire play surface to be seen at once and using gestures that could not work on smaller screens. Developers are encouraged to think about how users will interact with the iPad differently than a phone when sitting on the couch rather than on the go. A few examples of innovative touch interfaces are provided, with the overall message being to make games that enhance the iPad experience rather than just adapting phone games.
Similar to Real-world game development with Ebitengine - How to make the best-selling Go game (20)
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemPeter Muessig
Learn about the latest innovations in and around OpenUI5/SAPUI5: UI5 Tooling, UI5 linter, UI5 Web Components, Web Components Integration, UI5 2.x, UI5 GenAI.
Recording:
https://www.youtube.com/live/MSdGLG2zLy8?si=INxBHTqkwHhxV5Ta&t=0
How Can Hiring A Mobile App Development Company Help Your Business Grow?ToXSL Technologies
ToXSL Technologies is an award-winning Mobile App Development Company in Dubai that helps businesses reshape their digital possibilities with custom app services. As a top app development company in Dubai, we offer highly engaging iOS & Android app solutions. https://rb.gy/necdnt
Most important New features of Oracle 23c for DBAs and Developers. You can get more idea from my youtube channel video from https://youtu.be/XvL5WtaC20A
Unveiling the Advantages of Agile Software Development.pdfbrainerhub1
Learn about Agile Software Development's advantages. Simplify your workflow to spur quicker innovation. Jump right in! We have also discussed the advantages.
8 Best Automated Android App Testing Tool and Framework in 2024.pdfkalichargn70th171
Regarding mobile operating systems, two major players dominate our thoughts: Android and iPhone. With Android leading the market, software development companies are focused on delivering apps compatible with this OS. Ensuring an app's functionality across various Android devices, OS versions, and hardware specifications is critical, making Android app testing essential.
WWDC 2024 Keynote Review: For CocoaCoders AustinPatrick Weigel
Overview of WWDC 2024 Keynote Address.
Covers: Apple Intelligence, iOS18, macOS Sequoia, iPadOS, watchOS, visionOS, and Apple TV+.
Understandable dialogue on Apple TV+
On-device app controlling AI.
Access to ChatGPT with a guest appearance by Chief Data Thief Sam Altman!
App Locking! iPhone Mirroring! And a Calculator!!
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
E-commerce Development Services- Hornet DynamicsHornet Dynamics
For any business hoping to succeed in the digital age, having a strong online presence is crucial. We offer Ecommerce Development Services that are customized according to your business requirements and client preferences, enabling you to create a dynamic, safe, and user-friendly online store.
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...XfilesPro
Wondering how X-Sign gained popularity in a quick time span? This eSign functionality of XfilesPro DocuPrime has many advancements to offer for Salesforce users. Explore them now!
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfVALiNTRY360
Salesforce Healthcare CRM, implemented by VALiNTRY360, revolutionizes patient management by enhancing patient engagement, streamlining administrative processes, and improving care coordination. Its advanced analytics, robust security, and seamless integration with telehealth services ensure that healthcare providers can deliver personalized, efficient, and secure patient care. By automating routine tasks and providing actionable insights, Salesforce Healthcare CRM enables healthcare providers to focus on delivering high-quality care, leading to better patient outcomes and higher satisfaction. VALiNTRY360's expertise ensures a tailored solution that meets the unique needs of any healthcare practice, from small clinics to large hospital systems.
For more info visit us https://valintry360.com/solutions/health-life-sciences
UI5con 2024 - Bring Your Own Design SystemPeter Muessig
How do you combine the OpenUI5/SAPUI5 programming model with a design system that makes its controls available as Web Components? Since OpenUI5/SAPUI5 1.120, the framework supports the integration of any Web Components. This makes it possible, for example, to natively embed own Web Components of your design system which are created with Stencil. The integration embeds the Web Components in a way that they can be used naturally in XMLViews, like with standard UI5 controls, and can be bound with data binding. Learn how you can also make use of the Web Components base class in OpenUI5/SAPUI5 to also integrate your Web Components and get inspired by the solution to generate a custom UI5 library providing the Web Components control wrappers for the native ones.
Microservice Teams - How the cloud changes the way we workSven Peters
A lot of technical challenges and complexity come with building a cloud-native and distributed architecture. The way we develop backend software has fundamentally changed in the last ten years. Managing a microservices architecture demands a lot of us to ensure observability and operational resiliency. But did you also change the way you run your development teams?
Sven will talk about Atlassian’s journey from a monolith to a multi-tenanted architecture and how it affected the way the engineering teams work. You will learn how we shifted to service ownership, moved to more autonomous teams (and its challenges), and established platform and enablement teams.
5. Compiling a Go program into a native binary for Nintendo Switch™
https://ebiten.org/blog/native_compiling_for_nintendo_switch.html
6. Why Go?
?
Go Gopher by Renee French is
licensed under the Creative
Commons Attribution 3.0 License.
7. Number of reasons NOT to use
Go for Game Development
Back then (2017)
● No widely used game engines for Go existed
● No IDE like Unity3D/Unreal was available
● Not many 3rd party libraries were available for game development
● There were only small communities
● There is no official Go support on any console
● Daigo had professional experience in Unity3D and had no clue about
Go
8. Hi, Daigo!
Why don’t you use my
OSS game library
written in Go for your
new games!?
Dude,
It does not make
sense to use Go
for Game
Development
Hajime Hoshi Daigo Sato
9. You can learn Go
quickly, you are a
smart man!!
I’ll help writing the RPG
engine as well, deal?
Hmm?
It sounds good
actually... And you are
right, a smart person
should learn Go!
Hajime Hoshi Daigo Sato
11. So many challenges
● The game library (Ebitengine) did not have any multi-platform
support yet, it needed to be ported to every platform we wanted to
sell our game.
● The OSS was still immature, unstable, performance problems
○ Not reaching 30 FPS for a simple 2D game
○ No support for mp3, ogg
○ QA in production (Using our players as QA)
● If Hajime is bored with Ebiten, my business is over
※ all info above is based on the situation of the year of 2016
All of them above are unnecessary if you used Unity3D or Unreal
13. Hajime is Happy
Hajime Hoshi
● Used Odencat games to test Ebitengine
● Odencat games being the Demo for Ebitengine
● Bear’s Restaurant proves Ebitengine runs on
Nintendo Switch™
● Someone is Dogfooding your OSS
● Fun and comfortable working experience with Go
● Gives energy to his life
15. Daigo is Happy
Daigo Sato
● Very fast iteration with very short compile time.
● The limitation rather gave the power
● Being able to borrow the super talented engineer’s
power
● Have the feeling of full-control
○ Closer to native
○ High Maintainability / Portability
○ Dedication for crash-free
● Homebrew game engine is good for mental health
21. Evolve games
Clock of Atonement
Ported the existing RPGMaker2000 game
Bluebird of Happiness
Prove if we can make an escape room game / implemented sponsor system
Bear’s Restaurant
Support edge to edge experience for all devices / Ads Minigame System
Fishing Paradiso
Prove we can make more non-RPG games
23. Odencat Game Runtime
Native Layer
IAP / Ads / Analytics / Storage / ...
Game Data
Odencat RPG Runtime
Common Logic / Game Logic
ObjC/Java/C++
Go + Ebitengine
msgpack
per platform
one
per game
24. For each game, we are just swapping the game data
♫
Game Data
Music
Graphics
Scripts
.ogg
.png
.json
25. RPG Editor
● ReactJS + Electron
● Very similar to RPG Maker
series
● Build a game only with
commands
● Non-engineers can make
games
26. Animation Tool
● Pure Go tool
● Make keyframe animations
● Let artist make animations
without using the RPG
Editor
27. Switch target to make different builds.
The same Go code runs for
every game & every platform
31. Take away
● Solve the Chicken-Egg Problem if you build OSS
● I you develop everything from scratch, you should
have a good reason to do so.
● Making a game with Go is fun
In order to develop a successful OSS, it is necessary to solve the Chicken-Egg Problem. Evolving with your customer can be a good strategy.
Making a game is hard, if you develop everything from scratch, you’d better have a good reason to do so.
Making a game with Go is fun. It is true that I could’ve achieved what I’ve done with other languages, but it is good for your mental health if you use a language with a good philosophy.