2020. március 29., vasárnap

GGDA Meeting At KSU (And SIEGE Volunteer Meeting)

Presentation from Joe Cassavaugh: "How to Survive and Thrive in Game Dev." CGDD students faulty and chair attended.


2020. március 28., szombat

SYMBIOCOM (Aka SYN-FACTOR)


After helming one of the best interstellar Mary Celeste adventures in Majestic: Part 1 - Alien Encounter, the one-man design team of Istvan Pely got to work on some thematic sequels. Released 1998, the same year as Zero Critical (a future Chamber escapee I'm sure), Symbiocom shares a lot with his previous game in that you are searching a deserted space vessel seemingly abandoned in the deep recesses of space.

Read more »

Tech Book Face Off: Python For Data Analysis Vs. Python Data Science Handbook

I'm starting to dabble in machine learning. (You know it's all the rage now.) As with anything new, I find it most effective to pick out a couple of books on the subject and start learning the landscape and the details straight away. Online resources are good for an introduction, or to find answers to specific questions on how to get a particular task done, but they don't hold a candle to the depth and focus that you can find from reading about a subject in a well-written book. Since I'd already had some general exposure to machine learning in college, I wanted to work through a couple of books that focused on how to do data analysis and machine learning in a practical sense with a real language and modern tools. Python with Pandas and Scikit-Learn has a huge community and plenty of active development right now, so that's the route I went with for this pair of books. I selected Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython by Wes McKinney to get the details of using the Pandas data analysis package from the author of the package himself. Then I chose Python Data Science Handbook: Essential Tools for Working with Data by Jake VanderPlas to get more coverage of Pandas from another perspective and expand into some of the Scikit-Learn tools available for machine learning. Let's see how these two books stack up for learning to make sense of large amounts of data.

Python for Data Analysis front coverVS.Python Data Science Handbook front cover

Python for Data Analysis

This book covers all of the fundamentals of doing data analysis with Python using IPython, Jupyter Notebooks, Matplotlib graphing, and the main data analysis packages: NumPy and Pandas. It stops short of going into the other major data analysis and machine learning library, Scikit-Learn, because it had already filled over 500 pages with the intricate details of NumPy and Pandas. Wes McKinney is the original author of the Pandas library, so we're getting all of those details straight from the source.

The book starts out with the perfunctory chapters on installing Python and other packages, how to use IPython and Jupyter Notebooks, and running through the basic Python language features. It's filler chapters like these in nearly every programming book out there that makes me think that I no longer need to read introductory books on new languages. I can just go directly into books on applications of any given language, confident that they'll introduce me to the syntax and features I need to know anyway. It's not wrong, exactly, but the result is an awful lot of books with the same extra introductory material filling up pages that will mostly go unread.

Then there's a big chapter on using NumPy before moving on to Pandas for the rest of the book, with a chapter on the Matplotlib graphing library thrown in somewhere in the middle. The main focus is on Pandas, which is a huge library with tons of invaluable features for messing around with data. The book covers everything from reading and writing data, data cleaning, combining and merging data in various ways, doing complex calculations on the data with aggregation and groupby operations, and working with time series and categorical data.

The number and types of operations you can do on a data set with Pandas is pretty incredible, and that makes Pandas an excellent library to learn to use well. As McKinney says in the book,
During the course of doing data analysis and modeling, a significant amount of time is spent on data preparation: loading, cleaning, transforming, and rearranging. Such tasks are often reported to take up 80% or more of an analyst's time.
With all of that time spent on low-level data tasks, Pandas makes the life of a data scientist so much easier and more enjoyable. Data can be cleaned and transformed much more easily and reliably, and you can get down to making inferences about the data quickly.

Beyond covering all of the ins and outs of Pandas, McKinney sprinkles in a few good tips on other tools that can speed up your data analysis tasks. For instance,
If you work with large quantities of data locally, I would encourage you to explore PyTables and h5py to see how they can suit your needs. Since many data analysis problems are I/O-bound (rather than CPU-bound), using a tool like HDF5 can massively accelerate your applications.

Other than these scattered tips, the book is actually fairly dry and uninspiring. It reads a lot like the (excellent) online documentation for Pandas, but doesn't add too much more than that. Even most of the examples for different features are just drab randomly generated numbers with boring labels. You could just as easily read the online docs and get all of the same material. It may be a little nicer to have it all in book form so that you can sit down and focus on it, but that's a slight advantage. I was hoping for something more, that secret sauce that you sometimes find in books on software libraries, to make the book a greater value than just reading the online docs.

The book does have a chapter at the end that goes through some extended examples of data wrangling with publicly available data sets, which is a nice way of bringing everything together, but it's a small part of a large book. All in all, it's a no-nonsense, comprehensive exploration of the Pandas library, but not too much more than that. I wouldn't recommend it because there are better options out there that add something more than the online documentation can give you, like the next book.

Python Data Science Handbook


The Python Data Science Handbook covers most of what Python for Data Analysis does with somewhat less depth, but then goes much further into using Scikit-Learn to analyze data sets with machine learning techniques. The book is split into five large chapters, only the first of which delves into introductory minutiae by introducing the IPython interpreter. Thankfully, the book assumes you know Python already and doesn't bore the reader with another summary of lists, dicts, and comprehensions.

The next few chapters cover the use of NumPy, Pandas, and Matplotlib, and while the Pandas material is somewhat reduced from Python for Data Analysis, the Matplotlib material actually gets into the cartography drawing capabilities of this library. So, there are trade-offs in the number of topics covered in this book, as I would say the author gives more breadth while sacrificing some depth. The last chapter explores a good amount of Scikit-Learn with explanations and discussions of ten different machine learning models. This chapter added significantly to the book, grounding the features explored in the previous chapters with machine learning applications on real data sets of hand-written digits, bicycle traffic, and facial recognition. Seeing how different models performed better or worse in different applications was fascinating and enlightening.

The writing style of Jake VanderPlas was much more engaging as well. While reading the book, I felt like I was being guided by a mentor who wanted to make sure I understood the reasons behind different decisions, and why things should be done a certain way. While Python for Data Analysis focused on the "what" and "how" of programming with Pandas, the Python Data Science Handbook really addressed the "why" of data science programming, from explaining some of the reasons behind little decisions:
One guiding principle of Python code is that "explicit is better than implicit." The explicit nature of loc and iloc make them very useful in maintaining clean and readable code; especially in the case of integer indexes, I recommend using these both to make code easier to read and understand, and to prevent subtle bugs due to the mixed indexing/slicing convention.
To carefully describing the big issues with training machine learning models:

The general behavior we would expect from a learning curve is this: A model of a given complexity will overfit a small dataset: this means the training score will be relatively high, while the validation score will be relatively low. A model of a given complexity will underfit a large dataset: this means that the training score will decrease, but the validation score will increase. A model will never, except by chance, give a better score to the validation set than the training set: this means the curves should keep getting closer together but never cross.
This conversationally instructive style was quite comfortable, and made the whole book an enjoyable read, even though the material was understandably complicated with a lot of different features and concerns to think about. VanderPlas helped it all go down easily. It was a lot to take in, but it was never overwhelming. He also had plenty of words of encouragement, knowing that when real problems with data arise, it could get discouraging:
Real-world datasets are noisy and heterogeneous, may have missing features, and may include data in a form that is difficult to map to a clean [n_samples, n_features] matrix. Before applying any of the methods discussed here, you must first extract these features from your data; there is no formula for how to do this that applies across all domains, and thus this is where you as a data scientist must exercise your own intuition and expertise.
It's easy to tell that I much preferred this book over Python for Data Analysis, and I would recommend anyone looking into data science and machine learning take a look at the Python Data Science Handbook. It's a great overview of the subject, and you'll be able to get up and running with Python quickly, experimenting with some real applications of machine learning, and learning some of the critical issues of feature engineering and model validation.

Only the Beginning


These two books, Python for Data Analysis and Python Data Science Handbook, clearly only scratch the surface of machine learning. They teach you how to use the main Python libraries for data analysis and machine learning, but they don't go much further than that. There's a ton more stuff to learn about how to do machine learning well and what goes on under the hood in all of these various models. I've got my eye on more machine learning books like Python Machine Learning by Sebastian Raschka, Hands-On Machine Learning with Scikit-Learn and TensorFlow by Aurélien Géron, and The Elements of Statistical Learning by Trevor Hastie, et al, among many others. There's a vast amount of literature out there now on machine learning, covering everything from practical applications to the theoretical underpinnings of the models. Suffice it to say, this is only the beginning of the exploration.

2020. március 24., kedd

Hiring: Audio Lead / Sound Designer



Title: Audio Lead / Sound Designer
Focus: Creating and implementing sounds, managing audio content
Type: Full-time, permanent
Last day to apply: Monday 15th of April 2019 /CLOSED
Location: Malmö, Sweden (Doing remote work from EU/EEA countries welcome)

You remember it: a faint rustle in your periphery, dragging footsteps around the corner, a raspy breath. You still break in cold sweat when you hear that high-pitched screech that means a monster is near. All the iconic soundscapes that make Frictional games what they are.

We are now looking for an experienced audio designer to work in-house and continue this tradition of keeping a new generation of gamers on their toes with lovingly designed, eerie and memorable soundscapes.


What will you work on?

We are quite a small team, but we consider that our selling point. As a sound designer you will get to work on everything from small effects to the overall mood of the project. This means your contribution will greatly influence how the final game sounds, feels and evokes emotions.

Here are some of the things you will be working on:
  • Collaborating with designers to create soundscapes, taking both artistic and gameplay aspects into account.
  • Being a part of designing the overall mood of the game.
  • Creating some of sounds used for our monsters, machines and other otherworldly noises using libraries, or from scratch if possible.
  • Creating sound effects timed with specific events and animations.
  • Refining events by working with both our map editor and scripting tools.
  • Researching various technical features needed to achieve certain effects.
  • Handling the music, either by creating it or working with a musician.
  • All in all, helping the game world come to life.

We also encourage working outside of your area of expertise, and always learning new things. The more areas of development you are willing and able to  take part in, the better! For example you are encouraged to participate in our fortnightly testing and leave feedback on other aspects of the game.


What are we looking for?

You have to be a European (EU/EEA) resident to apply.

The person we're looking for is creative, driven and self-sufficient. With a remote team such as ours, the ability to organise your own work is a fundamental skill.

We have recently set up a central hub in Malmö, Sweden, and will help you move to our seaside city if it suits your situation.

Here are some essentials we require:
  • Hardware and equipment to work with.
  • We don't expect you to have a fully equipped home studio, but enough to work on most of the sounds. Additional equipment can be provided if needed, but it is important that you have the hardware needed to start working.
  • At least one year of experience in audio production for games.
  • Good understanding of sound and music, and how they affect the player experience.
  • Ability to challenge yourself, make bold creative decisions, and try non-conventional things.
  • A critical approach to your work, with the ability to take a step back and reflect.
  • A strive for structure, efficiency, and clarity.
  • Strong self-drive and ability to organise your own work.
  • Interest in and ability to do research for interesting sound and music solutions.
  • Love for working on a variety of tasks.
  • Fluency in English.
And here are some more techie skills:
  • Familiarity with FMod or Wwise.
  • Basic knowledge in programming.
  • Basic knowledge of creating maps in a level editor.
If you want to impress us:
  • Love for horror, sci-fi, and narrative games.
  • A major role in completing at least one game.
  • Experience in level design.
  • Strong game design skills.

What do we offer?

We make games, because that's what we love. But we know there are other things we love, like playing games, taking part in sports, or spending time with our families. We believe a healthy balance between work and life reflects positively on your work, which is why we don't encourage crunch.

We also offer:
  • Flexible working hours.
  • Opportunities to influence your workflow.
  • Variety in your work tasks, and ability to influence your workload.
  • Participation in our internal game Show & Tell sessions, so you'll have input into all aspects of the game.
  • Social security and holidays that are up to the Swedish standards.
  • An inclusive and respectful work environment.
  • An office in central Malmö you can use as much as you please.
  • Fun workmates, game and movie nights, and other outings!

Apply!

If all of the above piqued your interest, we would love to hear from you! Send us your application 15th of April the latest - but the sooner, the better!

Please attach your:
  • Cover Letter 
    • Why should we hire YOU?
  • CV
  • Link to your portfolio site
  • Link to a video reel demonstrating sound design abilities
  • A document describing a game soundscape you have worked on. Please write about the following:
    • What you worked on.
    • What you were going for with the design.
    • What went well in the project and what you would prefer to change in retrospect.
Please note that we require all the attachments to consider you.

Send your application to apply@frictionalgames.com!




Wonder how we hire? Read our blog on How we hire at Frictional Games.
What kind of application are we looking for? Read our blog on Writing the best application for a Frictional Games job.

Want to know how sounds were made in the days of Amnesia: The Dark Descent? Check out the video starring our old sound designer Tapio Liukkonen below.





Privacy Policy

By sending us your application, you give us permission to store your personal information and attachments.

We store all applications in a secure system. The applications are stored for two years, after which they are deleted. If you want your your information removed earlier, please contact us through our Contact form. Read more in our Privacy Policy.

2020. március 21., szombat

PUBG's Tweet To Apex Legends

'APEX LEGENDS', released on 4 Feb. 2019, is a Battle Royale game by EA and RESPAWN ENTERTAINMENT.  Amazingly, this game took only 72 hours to reach 10 million players. PUBG also congratulated them on Twitter.





                  Upon its release, Apex Legends has been moving like a storm destroying every Battle Royale game in its way that includes Free Fire, Survival Game and other battle royale games. It seems that very soon Apex Legends will reach to the point where PUBG is now. It reached 1 million players in the first 8 hours, 2.5 million in the first 24 hours and finally 10 million after completing 72 hours.

                 On the other hand, PUBG congratulated Apex Legends when they reached 1 million players. It is given in the image.




                  Though both the games have the same objective to be the last man standing, both games are different in their own manner. PUBG is doing its best to make the game more realistic while Apex Legends is focusing on characters with special abilities and more futuristic gear.

                 Coming to characters, for now, Apex Legends has 8 unique characters to choose from. The characters are given in the image below.



                   Answer to the question 'Which platform will support it?' is Microsoft Windows, PS4 and Xbox One. 

         The most important thing is that it is free to play. And if the creator of PUBG is singing its praises, it must be pretty good.


What is your opinion about Apex Legends? Do you think Apex Legends will defeat PUBG? Tell us in the comments section below!

2020. március 20., péntek

Book Review - The Italian Wars Part 1 Helion Publishing


Something I've not done before, a Book Review, Yarkshire Gamer is turning into Radio 4 I hear you cry !

To make life easier the extensive Production Crew at Yarkshire TV have done a little 5 minute feature on the book.


The book can be purchased direct from the publisher on the link below, £19.95 including post and packing,

https://www.helion.co.uk/military-history-books/the-italian-wars-volume-1-the-expedition-of-charles-viii-into-italy-and-the-battle-of-fornovo.php


There are 128 pages with black and white illustrations throughout and colour plates (example above) in the centre.

It contains everything you would expect from a Book of this type, history, armies involved, battle description etc, I particularly liked the modern day photos of the field and also the "orbat" in the Appendix.


So in short everything I needed a year ago when I started my army ! Is there a conspiracy 🤔 plenty of new ideas for units going ahead. Definitely Recommended


SaltCon 2020 Main Event Review



SaltCon's 2020 Main Event was four days packed with all sorts of games and other activities for gaming enthusiasts. Participants came out to play games, with both old and new friends. Many walked away tired (especially those who were working so others could enjoy the time), but none left unsatisfied.

There were activities that have taken place every year along with some new ones. There truly was something for everyone.

The Ion Awards

The Ion Awards are a little more behind the scenes, but there was a lot of talk about the games that were submitted this year and how close the judging was. In the category of Light, the winner was Jason Corace with Super Truffle Pigs! In the Strategy category Brandt Brinkerhoff won with Oros (Pangea). Congratulations go to everyone who entered, the finalist as well as the winners. The games entered into this competition have a record of making it to market.

This was not the only competition at SaltCon.

Ion Award finalists

Tournaments and Contests

Every year tournaments are held for specific games and for being able to play well through multiple games. Along with earning honors and recognition for tabletop gamesmanship at SaltCon, Double Exposure Envoy hosted a number of tournaments that were qualifiers for future events. The winners of those events will be competing in national tournaments being held at GenCon, which includes getting into that convention and room shares. Those who have gone, or tried to attend, understand the size of that prize.

Some of the tournaments
A good number of games were given away in the Play to Win contest. This activity draws a lot of attention from attendees. When you play one of these games, you are entered into a drawing to win it. These are new games being promoted and there is always a wide variety of them to fit most everyone's gaming interest.

A miniatures painting competition was once again held. This event is growing. The pieces entered showed wonderful craftsmanship and artistic acumen.

Prototype Alley

Over two evenings game designers were showing what they created. They are in all levels of development, which adds to the fun. There were games of all different styles including cooperative games, funny ones, strategic of both low and high, and even some of the games entered in the Ion Awards competition.

This year Prototype Alley moved into the foyer to wonderful acceptance. I talked with a couple of people who had attended SaltCon in years past and hadn't before stopped in Prototype Alley to try games in development. They explained they had thought the games would be rough, unplayable versions that would be hard to learn and play. They were pleasantly surprised with what they found and were playing a number of games on display.

For those who think playing a prototype is not what you'd be interested in, I suggest you give it a try. The developers put a lot of effort to create fun and satisfying games. When they are sharing their game, they are also sharing the enjoyment of the tabletop gaming hobby. They are also genuinely interested in feedback players give so they can make their games even better.

Games, Games, and more Games

Every year the game library grows. Every person who had the opportunity of playing a game held in the library should give the SaltCon group a big thank you. They devote a lot of time throughout the year to gain acquisitions for the library and taking care of their existing games so they can return again and again. Old favorites along with the new ones are part of the library.

The list of Hot Games was once again an exciting addition to games being played. These are the games people are chatting up across different platforms as some of the best new releases. SaltCon gives you the opportunity to give them a try.

Artemis was hosted again by the local Star Trek organization. This strategic live action game gives participants a chance to be part of the bridge crew of a Star Fleet vessel and see if they have the mettle to make it in space. Every time I passed the room there were not only the people who were participating as the crew; others were enjoying it by watching what was taking place.

Friday afternoon

Roleplaying Games

The roleplaying area was expanded. Not only were there more tables, there was a wider variety of games. Of course there was the Adventurers' League and other DnD tables. There were also games fitting into practically every genre of storytelling. These games weren't limited to sitting at the table. Some were social deduction games requiring a larger group.

John Wick, the roleplaying game (RPG) developer of 7th Sea and other games, was present this year supporting both Gallant Knight Games and his projects with Chaosium. He, along with Alan Bahr (Gallant Knight Games) and Ben Woerner (Wunderwerks) did a multi-table Tiny Supers game and play-tested a Live Action Role Play of RuneQuest set in Glorantha.

Along with the panels for game developing, the first Game Master Workshop was held. The class worked with players to learn how to become game masters at their own tables. They earned certification for completing the workshop. I heard praise for what they walked away with. I expect the workshop will be returning.

John Wick and Alan Bahr kicking back in the vendor hall

Designers and Artists and More

The vendor hall was a captivating market of games, art, books, crafts, and supplies. A person could easily lose themselves in checking out everything that was available. There were people who would slip in to find the right dice, or bag to hold them in. They would pick up the latest game they just returned to the game library, or pick up a copy of the RPG they just experienced.

The people in this hall are people who know their craft. Many a wonderful item could be had. It is a place every conventioneer should check out to see what is available and what is forth coming. I was able to play a number of games just making it to market along with some still in development.

If you've been concerned about stepping into the area of vendor booths, you are missing a great source of fun and entertainment. There are only a few places you can buy soap themed from some favorite games, books, movies and television.

Prototype shadowbox demo for Shadow Brume
 Final Thoughts

SaltCon's 2020 Main Event was enjoyable. Each event improves from the last as the staff of regulars and volunteers put forth the effort to make the next one better. I consider SaltCon to be my home gaming convention because I have been attending for a number of years and I haven't been disappointed.

Those who were there with me, I hope you enjoyed it as much as I did. Everyone I talked to was having a great time and gaining new friends from across the country.

If you like games and haven't attended SaltCon yet, you have a treat in store for you when you experience it.

I'm working at keeping my material free of subscription charges by supplementing costs by being an Amazon Associate and having advertising appear. I earn a fee when people make purchases of qualified products from Amazon when they enter the site from a link on Guild Master Gaming and when people click on an ad. If you do either, thank you.

If you have a comment, suggestion, or critique please leave a comment here or send an email to guildmastergaming@gmail.com.

I have articles being published by others and you can find most of them on Guild Master Gaming on Facebookand Twitter(@GuildMstrGmng).


2020. március 19., csütörtök

Kickstarter Concluded


It's over.

Thank dread Cthulhu and His one-hundred-and-eleven slimy green tentacles!

Now, I can breathe a sigh of relief before diving back into the writing side of self-publishing.

What am I referring to?  Only the greatest Kickstarter comeback in the history of everything.  That's all.  Yes, Cha'alt: Fuchsia Malaise secured just over $13,000.  Less than I dreamed, but more than I realistically expected after the first 20-25 days where we seemed to be irrevocably stuck at about 7 grand. 

If you decide you want in, don't worry.  You didn't miss out on your chance to secure a luxury, signed, numbered, off-set printed hardcover edition of Cha'alt: Fuchsia Malaise (or it's predecessor... Cha'alt).

I can't keep this eldritch, gonzo, science-fantasy, post-apocalypse campaign all to myself, now can I?  Simply email me and we'll get you squared away: Venger.Satanis@yahoo.com

This past week, I ran three playtest sessions.  Two on Roll20, and one face-to-face.  I'll be blogging about them either tomorrow or the next day.

Besides saying THANK YOU to all my supporters, backers, fans, and fellow gamers, I'm done here.  ;)

VS

2020. március 17., kedd

Suzy Cube Update: June 1, 2018

#SuzyCube #gamedev #indiedev #madewithunity @NoodlecakeGames 
What a week!! We are continuing to work hard to wrap things up in time for *redacted*. 
Read more »

2020. március 6., péntek

4L-2738, Mountain King!

This episode's game is Mountain King by CBS Electronics. It contains bats, which should tell you everything you need to know. Next up is the last game of the year, Roc 'n' Rope by Coleco. Please get your feedback to me at 2600gamebygame@gmail.com by end of day 1 December. I'm also planning another Christmas episode, if you have any Christmas or Hanukkah or Kwanzaa stories you would like to share (it doesn't have to be about video games), please get them to me by December 16th. As always, thanks for listening, and thanks to all who donated and watched along with my Extra Life half marathons. It was a lot of fun and I made my goal, which is awesome.

The King's Links

Mountain King on Random Terrain
Mountain King Easter egg page on Atari Compendium
Tony Roy's Mountain King Easter egg site
Ed Salvo interview by Scott Stilphen
Ron Hartman interview by Kevin Savetz
Anitra's Dance by Grieg
In The Hall of the Mountain King by Grieg
No Swear Gamer 567 Mountain King
NSG Mountain King Easter eggs
NSG Mountain King gameplay

Download Flash Mod For Gta Sandeas














to see the control go to discription

                                                                   discrription

to activate the flash press=TABE+QorE
to run faste press=w+x+space
to activate more contron see
F5: Toggle On/Off Power Level Control
F6: Show power bar
F7: Toggle on/off for Super Speed (press + to increase speed and - for decrease)
F8: Super Jump (no need to)
press Y or N: toggle on/off Walk on water
Tab: bullet time
To do wall-run: press W + Jump to the wall and hold
You can hold X:  to run faster without Super Speed ability (F7

F9:Flying Jump
F10 Fly
F11 Super Strength
F12 Heatvision
F4 to turn ON/OFF


               NOTICE: Please try this mod on clean GTA SA (no mod installed before)



plese first download win rar software (you coud not download winrar software your mod is not                                                                                                                                                            (working)
                                             




                                                                     get winrar from here




mod password is fulla1
click here to download flash mod= here







                                                                 




























Movie/TV Reviews: Dunkirk, Blade Runner 2049, Stranger Things Season 2, The Big Sick, Frantz

See all my movie reviews.

Dunkirk - This is a fantastic Christopher Nolan movie, but not one I want to see multiple times. Okay, maybe one more time, but that's it.

The story is a slice of the evacuation at Dunkirk, the famous retreat of British (and French and Belgian) soldiers from France at the opening of WWII. While French soldiers held Germany at bay, Britain evacuated over 300,000 soldiers after expecting to only be able to rescue 30,000 or so. The evacuation was assisted by some air cover and by owners of small crafts, such as motor boats and so forth, taking the 25 mile sea trip to France and back. The beach was under attack a lot of the time.

The movie presents one week of the story of a foot soldier making several attempts to gain safety on a ship, interspersed with one day of the story of a civilian motorboat owner who travels to France to pick up some of the soldiers, interspersed with one hour of a pilot providing air cover. All stories converge by the end.

The interspersing of the stories was good in theory, but a little confusing due to the shifting time frames. There is no sensationalizing the war, either for or against. The stories are about fear, desperation, heroism and tragedy and survival, and how these are instantiated in humans. It's a war movie with little in the way of fighting; mostly it's about ducking and covering and running. But it's also about bravery and morality.  It is not presented as a traditional story.

The acting and directing are sensational, and so is the cinematography. Most sensational is the sound, which heightens the gripping visuals and makes them either pathetic or harrowing. Very beautiful, often educational, and a real demonstration of what movies can be. I can't remember if there are any women in the movie.

The Big Sick -  The best rom-com I've seen in quite a while, this was very funny and quite heartwarming. Written by and starring Kumail Nanjiani (Silicon Valley), it tells a fictionalized version of how Kumail met his American wife (played by Zoe Kazan) and the difficulty he/they endured from his parents (played byAnupam Kher and Zenobia Shroff) and (to a lesser degree) her parents (played by Holly Hunter and Roy Romano). The central part of the movie is a) the fact that his parents reject her because she is not Pakistani and b) that he spends a lot of time in the hospital with her parents when she suddenly falls into a coma ... after he had allegedly already broken up with her.

It's funny and it's touching. It's well acted and directed. But mostly, the script is great. It's funny. Worth seeing, especially on a date.

Frantz -  A reworking of a very old movie, this tells a story set just after WWI. A German woman goes every day to the cemetery to put flowers on the grave of her fiance Frantz who was killed in the war, and one day she meets a man ... a French man .. who also starts putting flowers on the grave. She is living with her former fiance's parents, and they are all grief-stricken. The Frenchman shows up, but anger and intolerance runs high. Until he says how he was great friends with Frantz and can't get over his death. This is kind of believable, since Frantz was a humanist, pacifist, and Francophile before the war. But ... what kind of relationship did this guy really have with Frantz?

As a modern viewer, our immediate suspicion is that the guy was Frantz's lover, something not even considered or asked by the protagonists in the movie. The movie confirms some things and then goes in other directions, and then in yet other directions. Intolerance runs on both sides of the border, lies are condemned but met with other lies, and who knows where it will all end up. Will they get together?

The movie is beautifully shot, costumed, and acted. The direction is lovely. It was enjoyable. However, it suffers from a few flaws that are the result of heavy handedness by the director. I will give a teeny example.

One of the scenes in Germany has this young Frenchman, all alone, while the German patrons, who have previously expressed their contempt for all people French, stand in a bar and sing their national anthem out of respect for Germany's soldiers. The Frenchman looks lost and even frightened. In the hands of a more competent director, we would expect to see the young lady at some future time in the movie, say, pass by a sports stadium or train station where French people are singing the national anthem. That would display the dichotomy without descending into heavy handedness. Instead, we see a scene where she is all alone, while the French patrons, who have previously expressed their contempt for all people German, stand in a bar and sing their national anthem out of respect for France's soldiers. Come on. I actually laughed out loud at this and said "Come on!" in the movie theater. And this kind of thing happens again and again. The Frenchman knocks on her (fiance's) parents door, and then later we see her knock at his family's door in an eerily similar shot. And on and on like this.

The director also shoots mostly in black and white but fades into color during certain scenes, which had the potential to be lovely (as it was in Pleasantville, Wizard of Oz, and other movies), but ended up also feeling heavy handed and obvious, essentially adding nothing to the movie that wasn't already patently obvious from the settings and story.

Honestly, I would have thought this was the director's second or third film, but it seems he has been making movies since the late 1980s. So he should know better.

Despite these misfires - and the fact that no blame is assigned to anyone for the war, it just kind of happened - the movie is otherwise lovely and sweet, with a story that really picks up and captivates you (especially after the first major reveal).

Blade Runner 2049 - It's good, although maybe not as good as it could have been. It fits seamlessly in with the first movie, without being a retelling of that movie, which is about as well as one could hope for.

The first Blade Runner had its faults - a little too much staring at visuals, a little undeveloped romance (even a little rape-y), a few plot-holes and inconsistencies - but it was beautifully filmed and acted, had an intellectual script unlike any other science fiction movie since 2001, and created a genre and look for many other movies to copy. This one doesn't really break any new ground; if anything, it feels like it inhabits the same space as Ghost in the Shell 2017. However, it has a few unique twists on the hero/destiny journey which make it rather brave in some ways. I suspect that its ending is a reason that it didn't perform overly well in the box office, but actually its ending is just right when you think about it.

As for its acting, visuals, plot, and directing, they're all good. I was confused about certain elements of the movie - how can androids have babies / grow up from being babies? What kind of biological functions do they have? Do their cells wear out? Do they go through teething, adolescence, and puberty? What do they eat, do they eliminate, and how do they metabolize? None of that makes any real sense.

I have to see it again to really get some of the confusion cleared up. In any case, it's certainly worth going to see.

Stranger Things (season 2) - Well, I just saw it and it blew me away, much like the first season did. There is really not much to say about it. It's a great story, starts off a little slowly for the first few episodes like last season, and then gets rip roaring. There are a few new characters and they are all fantastic.

The show is now part Andromeda Strain, part Aliens, and part Harry Potter. If it has any fault, it feels so neatly wrapped up that I can hardly imagine a need for another season. These two were just perfect.

2020. március 5., csütörtök

Summer Internship Opportunity

Please let me know if you are interested:

This is a summer paid internship position.

The intern will be the main Unity developer for an educational program that is being designed. Unity dev skills with C# coding skills are both required. 2D dev experience, mobile development experience, and HTML5 experience would be great, but is not required.

The project will be a mobile and desktop game, built in a 2D environment.

2020. március 4., szerda

Brainstorming With Reversal

In the previous two posts I described how I sometimes approach a problem by trying to arrange it into a matrix. Sometimes that doesn't work and I instead try to look at the problem backwards. As an example, consider procedural map generation. I often start with a noise function, adding octaves, adjusting parameters, and adding layers. I'm doing this because I'm looking for maps with certain properties.

Map of a procedurally generated island

It's fine to start by playing with parameters, but the parameter space is rather large, and it's unclear whether I'll actually find the parameters that best match what I want. Instead, after playing around a bit, I stop and think in the opposite order: if I can describe what I want, it might help be find the parameters.

This is actually the motivation I was taught for algebra. Given an equation like 5x² + 8x - 21 = 0, what is x? When I didn't know algebra, I would've solved this by trying a bunch of values for x, jumping randomly at first, then adjusting it once I felt I was getting close. Algebra gives us the tool to go in the other direction. Instead of guessing at answers, it gives me tools (factoring, or the quadratic equations, or Newton's iterative root finding) that I can use to more intelligently find the values of x (-3 or 7/5).

I feel like I often am in that same situation with programming. For procedural map generation, after tweaking parameters for a while, I stopped to list some things I wanted for the game worlds in one project:

  1. Players should start far apart on the beach.
  2. Players should move uphill as they level up.
  3. Players shouldn't reach the edge of the map.
  4. Players should join into groups as they increase in level.
  5. Beaches should have easy monsters without much variation.
  6. Midlands should have a wide variety of monsters of medium difficulty.
  7. Highlands should have hard "boss" monsters.
  8. There should be some landmark to help players stay at the same difficulty level, and another landmark to help players go up or down in difficulty level.

That list led to some constraints:

  1. The game worlds should be islands with a lot of coastline and a small peak in the center.
  2. Elevation should match monster difficulty.
  3. Low and high elevation should have less biome variation than middle elevations.
  4. Roads should stay at a fixed difficulty level.
  5. Rivers should flow from high to low elevation, and give players a way to navigate up/down.

The constraints then led me to design the map generator. This led to a much better set of maps than the ones I got by tweaking parameters like I usually do. And the resulting article has gotten lots of people interested in Voronoi-based maps.

Another example is unit tests. I'm supposed to come up with a list of examples to test. For example, for hexagonal grids I might think of testing that add(Hex(1, 2), Hex(3, 4)) == Hex(4, 6) . Then I might remember to test zeros: add(Hex(0, 1), Hex(7, 9)) == Hex(7, 10). Then I might remember to test negative numbers too: add(Hex(-3, 4) + Hex(7, -8)) == Hex(4, -4). Ok, great, I have a few unit tests.

If I think more about this, what I really am testing is add(Hex(A, B), Hex(C, D)) == Hex(A+C, B+D). I came up with the three examples based on this general rule. I'm working backwards from this rule to come up with the unit tests. If I can directly encode this rule into the test system, I can have the system itself work backwards to come with the instances to test. This is called "property based testing". (Also see: metamorphic testing)

Another example is constraint solvers. In these systems you describe what you want in the output, and the system comes up with a way to satisfy the constraints. From the Procedural Content Generation Book, chapter 8:

In the constructive methods of Chapter 3 and the fractal and noise methods of Chapter 4, we can produce different kinds of output by tweaking the algorithms until we're satisfied with their output. But if we know what properties we'd like generated content to have, it can be more convenient to directly specify what we want, and then have a general algorithm find content meeting our criteria.

In Answer Set Programming, explored in that book, you describe the structure of what you're working with (tiles are floors or walls, and the tiles are adjacent to each other), the structure of solutions you're looking for (a dungeon is a bunch of connected tiles with a start and an end), and the properties of the solutions (side passages should be at most 5 rooms, there are 1 or 2 loops, there are three henchmen to defeat before you reach the boss). The system then comes up with possible solutions and lets you decide what to do with them.

A recent constraint solver got a lot of attention because of its cool name and demos: Wave Function Collapse. You give it example images to tell it what the constraints on adjacent tiles are, and then it comes up with more examples that match your given patterns. There's a paper, WaveFunctionCollapse is Constraint Solving in the Wild, that describes how it works:

Operationally, WFC implements a non-backtracking, greedy search method. This paper examines WFC as an instance of constraint solving methods.

I done much with constraint solvers yet. As with Algebra, there's a lot for me to learn before I can them effectively.

Another example is when I made a spaceship where you could drag the thrusters to wherever you wanted, and the system would figure out which thrusters to fire when you pressed W, A, S, D, Q, E. For example, in this spaceship:

Example spaceship from a project of mine in 2009

If you want to go forwards, you'd fire the two rear thrusters. If you want to rotate left, you'd fire the rear right thruster and the front left thruster. I tried to solve this by having the system try lots of parameters:

Possible movements of spaceship

It worked, but it wasn't great. I realized later that this too is another instance of where working backwards would have helped. It turns out the movement of the spaceships could be described by a linear constraint system. Had I realized it, I could've used an existing library that solves the constraints exactly, instead of my trial-and-error approach coming up with an approximation.

Yet another example is the G9.js project, which lets you drag the outputs of some function around on the screen, and it will figure out how to change the inputs to match your desired output. The demos of G9.js are great! Be sure to uncomment the "uncomment the following line" on the Rings demo.

Sometimes it's useful to think about a problem in reverse. I often find that it gives me better solutions than if I only consider the forward direction.