NuPlayer
by Yrex, 2021

This is a highly experimental game engine intended for playing Unreal 1 maps. Don't expect anything to work.

Usage:
	You need to convert your maps and all their dependencies to NuPlayer's formats. At the very least you need Engine.u's classes.
	
	Drag and drop the map on Tools\UnExtract.exe. If it crashes, resave the map in a later engine version (e.g. 227i), then try again. Copy the resulting files (.t3d, .bsp and possibly a folder with MyLevel data named after the map) into Maps\.
		
	It's worth noting that after the conversion you can still easily copy and paste actors from UnrealEd to the T3D file (they won't be shifted by vect(32,32,32)).
	
	Use Tools\UnExtract.exe to extract textures and sounds. Use UnrealEd to extract meshes and classes.
	An extracted package should have this layout:
		package\Textures\group\name.ext
		package\Textures\name.ext
		package\Sounds\group\name.ext
		package\Sounds\name.ext
		package\Meshes\name.3d
		package\Classes\name.uc
	
	Remember that there's no UScript support. The .uc files are used only for default properties and mesh import lines.
	
	Optional: To reduce number of files, drag & drop a \Classes\ folder on Tools\PackUCs.exe. Then delete all files from it besides the newly created "(classes).uc".
	
	Extracted packages should be places into:
		.\Sounds\
		.\System\
		.\Textures\
	
	Place music (.umx/.mo3/.it/.s3m/.xm/.mod) in Music\. (This is the only time an Unreal package can be used directly.)
	
	It's worth noting that this layout is NOT the same as the .u sources.
	
	If the map crashes when loading it from the menu or from passing a teleporter, try opening it directly (drag & drop the .t3d on NuPlayer.exe). Also try changing LightmapSheetSize in NuPlayer.ini.

Controls:
	WASD - walk
	arrow keys - walk/rotate
	delete/end/page down - rotate vertically
	space, right mouse - jump
	ctrl, left mouse - shoot
	F - fly
	G - ghost (hold with F)
	N, M - tilt the camera
	Alt+Enter - fullscreen/windowed
	Esc - menu
	F9 - screenshot
	
System requirements:
	- Windows XP or later (older versions not tested), Linux (wine)
	- A GPU capable of OpenGL 2.0 (anything since mid-2000s). Honestly, anything supporting most basic OpenGL will probably work.
	
License:
	//	Copyright 2021 Yrex
	//	
	//	Permission to use, copy, modify, and/or distribute this software for any purpose
	//	with or without fee is hereby granted, provided that the above copyright notice
	//	and this permission notice appear in all copies.
	//	
	//	THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
	//	REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
	//	FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT,
	//	OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
	//	DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
	//	ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
	
	(That applies to my work. Some parts may have different licenses, check before reusing.)