The Internship Chronicles: Emmett & John

By Emmett Friedrichs (GDES ’20) and John Kornet (GPROG ’20)

During the Fall 2018 Semester, two of our students interned at Ludiq, located at theGameplay Space here in Montreal.

Emmett

Throughout the semester I have been a Prototype Developer Intern at Ludiq located at the Gameplay Space in Montreal, CA. As a company Ludiq consists of three main staff members Lazlo the founder and head of the company, Hassan in charge of marketing, and Andy an additional programmer. Ludiq began as a tool creation group for the Unity3D Asset Store, their first product named Chronos Time Control was a Unity asset tool that allowed developers to easily control time within their projects. After the products success, Lazlo then began working on the companies next big product named Bolt. Bolt is a visual scripting plugin and has been widely successful within the asset store as a primary go-to for developers that want to quickly prototype or code using widgets similar to the Unreal Engine. Due to this
success Ludiq has placed its focus on the Bolt software, and community and are set to complete a Bolt 2 product in a few months.

Students Emmett Friedrichs (GDES ’20), far left, and John Kornet (GPROG ’20), far right, with coworkers at Ludiq.

Due to the growing bolt community John a fellow intern and I have been brought on to create example projects to showcase the plugin. Ludiq had previous example projects and
tutorials placed on their website before, but these were all 2D simple games that really placed a bad reputation on the plugin for only being for simple games and inexperienced developers.
Instead John and I were to create example projects/games that had a lot of polish and nice visuals in Unity3D to show off the power of the plugin. For our development process we first compile different game ideas complete with asset lists, mechanics, and scope in mind. We then
pitch these different ideas to the company heads for their input. Once approved we begin working on the projects basic mechanics and move on from there. At this point we have worked on two projects and are planning on completing a third before the end of the semester. The first project named Drone Destroyer where players took control of a stationary turret defending a futuristic city from alien attackers. For this project specifically I worked on setting up the player turret, incorporating different polish such as particle effects, user interface, and skyboxes, I also imported and connected/fused many of the art assets, and worked on many of the systems in the background for the game mechanics. For this project we focused on getting an entire
gameplay loop finished early on so that lots of polish and aesthetics could be added in to show
off the plugin and the power of the engine. We then began deconstructing the project to show
off how we created some of the main mechanics displaying that consumers of the plugin could
create something similar in their future games. The web page featuring this project can be found
here.

The first project was complete just in time for a world-wide game jam that the studio had
put on for its members in its community, the contestants would have to use the Bolt plugin to
create a game and had a chance to win a prize from the company. John and I were lucky
enough to be involved in the game jam and judged each submission with the rest of the staff
based on varying scores. We then moved on to the second project which we are still working on
at this current period. This next project is based on isometric movement and combat based
around games such as the Diablo series. My personal input for the current project has been
level creation/design and navigation mesh editing and tweaking, along with some character,
enemy, and special attack polishing. This project has a much more cartoony styled artstyle
opposed to the futuristic aesthetics of the previous game, and contains many more mechanics
such as different combat styles of melee and ranged, along with special ultimate attacks, and enemy variants. The current difficulties are the very large detailed map we currently have and
getting all of the paths to be easily navigable for enemies and the player. This has been my job
recently.

Some of the takeaways from this internship have been the connections and people that I
have met through the location and staff of Ludiq. During lunch many of the different indie
companies eat together in the community kitchen which is an easy way to meet and talk with
new interesting individuals. I originally had a lot of difficulty gathering myself to sit with strangers
for the danger of interrupting their conversations and seeming rude, but after pushing myself to
ask if I could sit and eat with others, I found that It was a really easy environment. I quickly
found myself rushing to sit with developers from other teams just to hear about their current
difficulties, thoughts, and projects that they had been working on. Even conversations that I did
not entirely understand such as the political theater of Canada was an intriguing topic to my
ears. Throughout this internship I believe that I have improved upon my teamwork skills and
have gained knowledge of indie companies and studios that I would have not normally gained
without this opportunity. The location of Ludiq at the Gameplay Space a studio that contains
many indie companies has opened up many doors for myself and allowed me to meet and talk
with many successful people in the games industry. Through the project, communication, and
professional experience I believe that I have grown as a professional through this internship and
am grateful that I could be apart of Ludiq.

 

John

Ludiq was founded by Lazlo Bonin in 2015 with the creation of Chronos, a unity plugin that manipulates time.
Since then, Ludiq has since then developed Bolt, which is a visual scripting tool for unity, similar to Unreal’s “Blueprint” scripting. Unlike Unreal however, Bolt boasts a few added features such as state graphs, which function as built-in state machines, and animated flows on runtime so you can see your code working as it’s running in the editor, helping with debugging and understanding complex graphs. Bolt has been in development since 2016, and has constantly been improved. Bolt2 is in development, which has multiple improvements to the original, including an overhauled graph design that allows for a cleaner look and for more screen space to be utilized, and a function to generate C# scripts directly from your graphs. Ludiq is located in the GamePlaySpace in Montreal, along with other studios with games such as King of the Hat, Children of the Zodiac, and Tribes of Midgard. The space is a communal workshop that houses several game development studios as well as private rooms for meetings and game testing rooms. The space also holds events like playtesting games in development, and talks by industry professionals, making it a fantastic place to work on games.

My job as a game programmer intern was to utilize bolt to create games that showcase the kind of games that can be made with Bolt. Bolt’s tutorials and showcases primarily dealt with 2D platformers made from free assets from the Unity asset store. At large, the feedback from the community was that though they thought bolt was cool, they couldn’t see it as being used for anything more than simple 2D games, as it seemed to be a simple system. The reason Ludiq hired game design/programming interns was because they wanted to show that their tools could make games as complex as any game you could make with code, and that it was not only easier to understand, but easier to implement. I was in charge of implementing main systems including game mechanics and player systems, as well as AI and level mechanics. Since there were only 2 interns on the project, my duties often bled over to the side of designing and tweaking art assets as well. During my time as an intern, I was able to take part in the prototyping and designing of potential projects, as well as pitching the potential ideas to my supervisors. I was also able to participate in multiple discussions regarding the development of the projects we were going to complete, making adjustments from criticisms and feedback from the pitched designs.

One of the difficulties I faced during my internship was the fact that I was learning to program in a brand-new tool that I have never used before. The visual scripting tool was simple to use but learning how to use it to the same level that I would use regular C# code when coding games in Unity was somewhat challenging and took me a couple of days to get used to. That being said, having access to such tools as the state machines included with bolt made creating AI and character state trees much easier. Another challenge was working in such a small group to make quality games in a short amount of time. Luckily, the art and animation were mostly handled by Ludiq buying assets from the Unity asset store, but even with all of that, there was still a lot of work to be done in a very short amount of time.

Part of my internship was serving as a judge for “Bolt Jams.” These events were essentially week-long game jams where the submissions had to be made entirely with Bolt. The Ludiq team would then take these submissions and we would play them during one of our work days in one of the game testing rooms provided in the GamePlaySpace. Afterwards, we would rate the games based on how they looked, how entertaining they were, and how good their use of Bolt was within the project (how clean and organized their graphs were). We would then submit the rankings along with any feedback we had for the developers on the game, and the winner was awarded a prize (usually some free assets from the asset store from a partner of Ludiq or some gift card related to games. Another part of my internship was providing feedback on how the bolt visual scripting tool worked. I directed any bugs I found or feedback I had directly to Lazlo, and it along with a number of comments from Bolt’s online community helped aid in the production of Bolt 2.

My internship really helped me with conceptualizing game ideas, as well as presenting and pitching them to clients, and modifying them with feedback. The design process that went in to each game included a fair amount of planning and discussion, and I consider it to be a very valuable learning experience. It also helped me with figuring out how to best manage my time while working, since I was working under a fairly strict schedule. Making a good-looking game in a matter of a little over a month would be a difficult task for an entire indie studio, so it was a good amount of work for just two people, even though we were allowed to cut some corners. Since the games were not to be released but simply serve as demos, we didn’t have to implement a completely polished experience. The games had some bugs and certainly needed more tweaking in order to be released, but the amount of work that was put in to them was substantial given how much time we had to work on them.

Overall, I found my internship rewarding and educational. The skills that I learned while working at Ludiq are skills that I feel are worth learning, and the experience alone was worth the time it took. In the end, I was able to make a couple of cool game demos that I could be proud of, and that proved useful to the company. I feel that the time and work that I invested there was definitely worth the cost it took to be there, and I hope that the team at Ludiq feels the same way about me and my work.