Skip to content

diatoid/DOOM-iOS

 
 

Repository files navigation

DOOM, DOOM II and Final DOOM for iOS 11 and tvOS for Apple TV

This is my update for DOOM for iOS to run on iOS 11, running in modern resolutions including the full width of the iPhone X. I have also made a target and version for tvOS to run on Apple TV. Additionally, I have included targets to create apps for DOOM II and Final DOOM.

Improvements/Changes

  • Compiles and runs in iOS 11 SDK
  • Orientation and coordinate system fixed to reflect iOS 8 changes
  • C warnings fixed for Xcode 9.3
  • Basic MFi controller support
  • Structure and View Controller usage grafted in from the DOOM-iOS2 repository and public user forks, unused code and embedded xcodeproj use eliminated
  • Second project target for tvOS that takes advantage of focus model and removes on-screen controls.

This commit uses all new images for the menus and fonts. You will still need to provide your own copy of doom.wad for DOOM, doom2.wad for DOOM II, and tnt.wad and plutonia.wad for Final DOOM.

You can find the file doom.wad in any installation of DOOM, available on Steam, GOG, and floppy disk from 1-800-IDGAMES (note: do not call 1-800-IDGAMES I don't know where it goes anymore).

doom2.wad is in any installation of DOOM II, available on Steam or GOG

tnt.wad and plutonia.wad are in any installation of Final DOOM, available on Steam or GOG (note that GOG sells DOOM II and Final DOOM packaged together)

This repo contains changes from id's DOOM-iOS2 repo (different than the parent of this repo), changes from the FinalJudgement repo by JadingTsunami, and MFi controller code from TheRohans. I incorporated the efforts of yarsrevenge in getting the basics of the tvOS versions going.

I wrote a lengthy article on the process of making these ports. For a rundown of the effort to get it running on tvOS, I wrote a second lenghty article on the subject.

A previous version of this repo required the use of a file called base.iPack from an existing copy of the iPhone version of DOOM in order for the DOOM port to work, but I have now added a "clean room" version of that file and included the resources necessary to build it in case anyone wants to tweak or improve it. Credits for the images used are included below. A third lengthy article on the subject of the base.iPack file and adding the additional two games can be found here.

Video of DOOM running on an iPhone X

Video of DOOM running on an Apple TV

Have fun. For any questions I can be reached at tomkidd@gmail.com


base.iPack icon and texture credits:

Font texture created with LMNOpc Font Builder by Thom Wetzel

Font used is ChicagoFLF, public domain

Control Pad by Guillaume Berry from the Noun Project

explosion by BomSymbols from the Noun Project

Compass by Adrien Coquet from the Noun Project

Move by useiconic.com from the Noun Project

turn by shashank singh from the Noun Project

drive by priyanka from the Noun Project

Melted Paint

Plaster in Black and White

Tool by Ker'is from the Noun Project

circle arrow by Paul Verhulst from the Noun Project

Save by Markus from the Noun Project

Skull by Andrew Cameron from the Noun Project

Skull by Andrew Cameron from the Noun Project

Click sound effects 1 2 3 4

Releases

No releases published

Packages

No packages published

Languages

  • C 54.8%
  • C++ 40.6%
  • HTML 2.3%
  • Objective-C++ 1.2%
  • Objective-C 0.7%
  • Assembly 0.3%
  • Other 0.1%