The games industry clearly remains the most exciting and varied sector for a programmer to go to work in. In the Coding Track our seriously knowledgeable and experienced technical speakers will show you exactly how to rise to the many challenges and opportunities facing game programmers today - including new and emerging platforms.
While some part of almost every game needs to be tightly bound to a graphics (and perhaps physics) engine, there are benefits to minimizing this coupling and writing as much as possible as "pure" code, such as ease of refactoring and testing, portability and reuse, and protection against 3rd-party changes. For some styles of game it's possible to reduce the core engine, whether Unity, Unreal, or something else, to a means of gathering user input and displaying results to the player. Here I'll take you through how I structured a Unity puzzle game, Hexahedra, in exactly this way and the benefits I was able to reap by doing so. Hexahedra's architecture resembles the OSI network model, where the puzzle simulation (pure C# provided as a DLL) and the Unity implementations of game elements, in a hierarchical structure (puzzle, factory, workstation, device), are able to communicate with each other with message passing through a single link. The puzzle simulation passes a series of events to Unity for display, and Unity collects user input and passes it back through to the simulation. This allows the puzzle simulation to be reused to power a backend stats server while also making it particularly easy to refactor and unit test. The event-driven system also makes additional gameplay features such as rewinding time much easier to implement. I'll also highlight considerations that make this approach unsuitable for some types of game.
Leading a team can be hard and doesn't always come naturally to everyone. It is something that when done well can propel a team into success. When ignored however, can topple even the most talented set of people.
This talk outlines some of the learnings that I've made after my first full year as a Lead Programmer and the run-up prior as a Producer. Although there may be some specific cases that other crafts won’t come across, I’ve tried to generalise as much as possible for fledgling leads in any craft.
This talk aims to open up the conversation about responsible leadership within games. I’ll talk about team management, trusting your team, and some simple lessons that can be transferred into your day-to-day work life. There’s lots of material focused on leadership but few on what that is like in the unique context of game development. Hopefully, with these few pointers, you can reduce the stress of managing a team and focus on making fun and exciting games!
There is, of course, no one way to lead a team, but at least with this information, people don’t have to make the same mistakes that I have up to this point!
In this session you should takeaway:
- A few mistakes that I've made as a lead and things that should be avoided.
- Several tips and tricks that will help you manage a team in the long run, setting you up for success.
- A few considerations about what it means to lead and how the role is different from others.
Test Driven Development (TDD) can be a dry topic, and one of those concepts you learn about but possibly never see how to apply in a real world situation. Often focussed on discrete unit tests written at the beginning of a new project, its hard to reconcile that knowledge with your legacy, completely untested codebase, and even harder to reconcile with the many variables and interconnected systems that make up game development. This talk will give an overview of TDD from the point of view of someone who sees it as a mindset, rather than prescriptive. By addressing common misconceptions and using real world examples, this talk will explain the value that TDD brings specifically into the games development environment, showing how this mindset will impact and improve your implementations, stability, and communication between disciplines.
Whether you are working alone or in a team of hundreds, creating a program of real complexity will inevitably involve the work of many other people who work with you, or created the libraries, platforms and specifications that you depend on. Your work will then go on to interact with many programmers in the future, including yourself. Programming is as much about communicating with machines as it is about communicating with your colleagues, past, present and future.
In such an environment, empathy is an essential tool. Being able, and willing, to put yourself in someone else’s shoes is as hard as it is important. In this talk Pavle Mihajlovic, co-founder of Flavourworks, will go through how lack of empathy can cause major technical issues, why imagining not knowing something is so hard, and how to use empathy as a superpower.
• Why it’s hard to imagine not knowing something, and what we can do to compensate for it
• Why it’s so much harder to read code than to write it
• How making a conscious effort to be empathetic can make you a better programmer
There is only one hard problem in software development. Communication. Code reviews can be an important part of that, but too often they degenerate into nit-picking or become a box-ticking exercise. Code reviews have evolved from their roots in the more formal practice of code inspections, into asynchronous change-reviews such as the GitHub Pull Request process. Along the way much has been gained, but some things have been lost. While code reviews have seen widespread adoption, there are still questions as to whether reviews are the right tool for those in the games industry. Given that the tooling and methodologies that are widely available were mainly developed for the benefit of large distributed teams there are valid questions as to how applicable these techniques are to the smaller, more tightly-knit teams commonly found working on games. In this talk, Joe will share his experience of why code reviews matter, what they are good for and where they are not so useful. He will also look at some of the pitfalls to avoid and will give advice on best practices to help game developers, whether 30 years in or just starting their journey, to decide what form of review will best support the needs of their teams.
This presentation will focus on changes Ubisoft are making to their vehicle editing tool that greatly reduce the learning curve for a designer new to this field. Speakers Ben Ponsford and Michael Robson will demonstrate how moving to a modular system for data enables designers to rapidly prototype vehicle behaviour, and instantly make adjustments to multiple vehicles.
This can be applied to other complex systems and Ben and Michael will look at relevant analysis and statistics, and demonstrate how tuning can be made more intuitive and understandable.
• Complex systems with large numbers of tuning parameters can be broken down to be more easily managed
• Storing system parameters in a normalised database gives rise to rapid iteration, project sharing & simultaneous tuning possibilities
• Real-time analysis of complex systems allows interdependent behaviour to be observed and understood before user testing
At Darewise, we aim to modernize the game development process for our game-as-a-service: Life Beyond. To support a rapid iteration and release schedule while the game is still under heavy development, we have had to adapt our studio culture and our development processes to match. In this talk, we will focus on the programming aspect, on how to create, foster, and preserve a high-quality-code culture that results in a healthy, robust, and modular codebase that is resilient to design changes and could easily be reused for other games. We will cover the specific programming practices (best practices, code reviews, DevOps, management of technical debt...) as well as the equally important human aspects of management, hiring, knowledge sharing, and project planning methodologies we use.
Game developers now have fantastic tools for building huge, complex, beautiful worlds but very often life remains absent, especially that of characters engaging with a player. Game AI has progressed slowly in the last decade, but we are now seeing signs of it picking up pace. This talk takes a look at the current state of the art in game AI, where we as an industry are still struggling, what is on the horizon and what possible solutions might look like for the as-yet-unsolved problems. Join Sandy MacPherson (an ex-Crytekker who worked on developing Crysis 1-3 and is now a Senior AI Systems Programmer at Kythera AI) and Rod Stafford, (a technology evangelist who once designed and delivered the UK’s largest real-time government crisis simulation) as they describe the challenges facing game developers who are looking to bring forward a new generation of AI for games as well as celebrating some of the great successes to date.
This talk will provide an educated view into the current climate of video game AI, providing attendees with a realistic understanding of what the unsolved problems are.
It aims to leave attendees brimming with ideas for things to take home and try, and inspired to be a part of the community and to help us achieve the future.
Description: As programmers, we tend to find ourselves settling into habits, both good and bad. This roundtable will focus on what we could all be doing to get into better habits, the tips and tricks we've picked up along the way, and what we can all be doing in the future to keep improving our code and to build better games.
Reinforcement learning has recently shown impressive results on video games. This session presents a pragmatic view on training reinforcement learning based bots for modern video games and the different technical challenges that arise when developing and scaling such a system. Indeed, a lot of academic research allowed the field of reinforcement learning to reach a state where it is applicable to actual problems but very little has been studied when it comes to application at scale and the practical issues that need to be taken into consideration when developing and using a reinforcement learning system.
Delegates will watch a presentation and participate in a Q&A with James Stone, the Senior Technical Product Manager in Consoles R&D at Unity Technologies. He will share tips and best practices for bringing your Unity games to consoles, offering insights into places where studios typically struggle and help you overcome any potential hurdles that may impact your project. You will also be able to provide direct feedback during this session, to directly influence the future of Unity, helping you achieve greater success in your future games.
There really is a huge mix of people at Develop - loads of peers that you can learn from and the perfect blend of every element of game development as well.
There’s something creative about Brighton, so it’s the perfect place to have the conference.
A lot of the opportunities that come from being here are speaking to other developers who are doing exactly the same thing as you. And there are some good parties – it’s very much a pleasurable work experience!
One of the things I like about Develop is it brings people together from across Europe and the whole world. There is a very high level of professionals here, so you have company leaders having drinks with juniors from their community.
Dr Mata Haggis-Burridge
Develop:Brighton’s a great conference. It’s got a spread of people from all parts of the games industry talking about such a wide range of topics.
Develop always gets put in the diary. There are many reasons to be here, not just the talks, but the networking, people exchanging ideas about where the industry is right now and where it’s going to. It’s pretty essential to be here I think.
Ian Livingstone, CBE
Develop is an excellent way of catching up with people – there’s a really nice community feel here.
Mike Bithell Games
There’s really something for everyone at Develop and the experience of being around like-minded people is really useful.
I absolutely love coming to Develop, it’s a brilliant, brilliant conference – you just know you’re guaranteed to meet everyone.
Jo Twist, OBE
We are so lucky to have Develop here in the UK. It’s a unique event where you can come and discover new things with people who care passionately about video games. It’s a sea full of new ideas.
There are many ways you can be part of Develop:Brighton - including taking a booth in the Expo or choosing one of the many sponsorship opporunities during the event or at the Star Awards.Contact us now!