All Projects → jollymonsterstudio → ue4-kopiarka

jollymonsterstudio / ue4-kopiarka

Licence: other
This is a little util that lets me copy and rename projects from one directory to another

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to ue4-kopiarka

Awesome Unreal Engine 4
UE4/UE5 Ressources Collection (Plugins, Effects, Doc, Tools, etc...)
Stars: ✭ 153 (+537.5%)
Mutual labels:  engine, unreal
TwitchAuth
Unreal Engine 4 Plugin for In-Game Twitch Authentication.
Stars: ✭ 21 (-12.5%)
Mutual labels:  engine, unreal
UE4-BYGLocalization
Simple CSV localization system for Unreal Engine 4
Stars: ✭ 54 (+125%)
Mutual labels:  engine, unreal
rename-tool
一个基于 .NET Core 2.x 实现的项目重命名工具
Stars: ✭ 16 (-33.33%)
Mutual labels:  rename, project
Gascontent
Repo to gather all Gameplay Ability System content for UE4
Stars: ✭ 398 (+1558.33%)
Mutual labels:  engine, unreal
UT GameEventSystem
A flexible event system in Unreal Engine 4
Stars: ✭ 33 (+37.5%)
Mutual labels:  engine, unreal
Discord-UE4
Plugin for integrating Discord Rich Presence.
Stars: ✭ 66 (+175%)
Mutual labels:  engine, unreal
BlueprintWebSocket
Documentation for BlueprintWebSocket available on the Unreal Engine Marketplace.
Stars: ✭ 13 (-45.83%)
Mutual labels:  engine, unreal
v-oogle
Google.com, reVued. 🔎
Stars: ✭ 40 (+66.67%)
Mutual labels:  engine, unreal
UE4-BUIValidator
UE4 UI Texture Validator Plugin
Stars: ✭ 48 (+100%)
Mutual labels:  engine, unreal
Weaponessentials4.6
Weapon Essentials from my YouTube tutorial Series
Stars: ✭ 9 (-62.5%)
Mutual labels:  engine, unreal
Ue4 Tutorials
Collection of Unreal 4 Tutorials & Experiments.
Stars: ✭ 458 (+1808.33%)
Mutual labels:  engine, unreal
Ue4linuxlauncher
Stars: ✭ 79 (+229.17%)
Mutual labels:  engine, unreal
Reservation-System
Airline Reservation System is an online Airline Ticket Reservation Application built using Windows Forms, C#, MS SQL Server.
Stars: ✭ 18 (-25%)
Mutual labels:  project
horse-wizard
Wizard for HORSE projects
Stars: ✭ 36 (+50%)
Mutual labels:  project
create-react-native-project
Configured template for new React-Native project.
Stars: ✭ 19 (-20.83%)
Mutual labels:  project
elk
A low footprint JavaScript engine for embedded systems
Stars: ✭ 1,458 (+5975%)
Mutual labels:  engine
pyEnigma
Python Enigma cypher machine simulator.
Stars: ✭ 44 (+83.33%)
Mutual labels:  engine
VIDEOconvertor
A stable and Fast telegram video convertor bot which can encode into different libs and resolution, compress videos, convert video into audio and other video formats, rename with thumbnail support, generate screenshot and trim videos.
Stars: ✭ 180 (+650%)
Mutual labels:  rename
commercetools-project-sync
Dockerized CLI application which allows to automatically sync different resources between commercetools projects
Stars: ✭ 26 (+8.33%)
Mutual labels:  project

Unreal 4 Project Copy / Rename Tool - aka "kopiarka"

This is a small utility that allows you to take one Unreal 4 Blueprint / C++ project and copy/rename/update file references from one directory to another.

It can also be used to move/rename any other directories or files but it may not behave 100% due to how it renames contents of ascii files.

The primary motivation for this tool was to be able to quickly work on one project to create a baseline, copy the baseline to a new project, and keep iterating without having to create a ton of git branches in a single project.

Changelog

Release 1.0.2 - Latest Download

  • fixed one issue where similar names as part of nested directories caused the old project name to be retained

Release 1.0.1

  • fixed one minor issue where folders that had prefix or suffixes around the old project name would not get copied over correctly

Release 1.0.0

  • initial project release
  • only tested on Windows

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

Install Java 1.8 or greater

Instructions: https://www.java.com/en/download/help/index_installing.xml?os=Windows+10&j=8&n=20

Configuration

The project comes with an application.properties that needs to be updated prior to execution and placed along side the jar file in the same directory you will be running it from.

Sample properties

# ------------------
# REQUIRED PARAMS
# ------------------

# no trailing slashes
project.source.directory=c:\\OldProject
# NOTE: project names should be as unique as possible due to the way this tool manipulates strings.
#       for example if your project is called UAnim any references to your classes / code / configs that contain that term will be replaced ... regardless if you needed it not to be replaced
project.source.name=OldProject

# no trailing slashes
project.target.directory=c:\\NewProject
# NOTE: project names should be as unique as possible due to the way this tool manipulates strings.
#       for example if your project is called UAnim any references to your classes / code / configs that contain that term will be replaced ... regardless if you needed it not to be replaced
project.target.name=NewProject

# directories to include in the copy, specifically excluding any auto generated ones. comma separated.
whitelist.directories=Config,Content,Source

# extensions of binary files you want to copy. binary files are not examined internally for old project references. comma separated.
whitelist.extension.binary=uasset,umap,png,jpg,jpeg,wav

# extensions of ascii files you want to copy. ascii files are examined and modified during the copy with new project names. comma separated.
whitelist.extension.ascii=ini,cpp,h,uproject,sln,cs,gitignore,md,txt

# ------------------
# OPTIONAL PARAMS
# ------------------
# this parameter tries to delete the target directory before copying
# if parameter is omitted defaults to false
config.force.delete=false

Installing and Running

  1. Download the latest release ( zip )
  2. Extract zip file to a location on your hard drive
  3. Update application.properties with your folder / project details
  4. Run the application using java -jar ue4-kopiarka.jar

Sample console output

C:\projects\kopiarka\target>java -jar ue4-kopiarka.jar

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.0.5.RELEASE)

11:54:47.450 [main] INFO  c.j.u.UnrealProjectCopyApplication - Starting UnrealProjectCopyApplication on UNICRON with PID 19672 (C:\projects\kopiarka\target\ue4-kopiarka.jar started by zinczukw in C:\projects\kopiarka\target)
11:54:47.455 [main] INFO  c.j.u.UnrealProjectCopyApplication - No active profile set, falling back to default profiles: default
11:54:47.523 [main] INFO  o.s.c.a.AnnotationConfigApplicationContext - Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@510f3d34: startup date [Wed Nov 28 11:54:47 EST 2018]; root of context hierarchy
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.springframework.cglib.core.ReflectUtils$1 (jar:file:/C:/projects/kopiarka/target/ue4-kopiarka.jar!/BOOT-INF/lib/spring-core-5.0.9.RELEASE.jar!/) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
WARNING: Please consider reporting this to the maintainers of org.springframework.cglib.core.ReflectUtils$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
11:54:48.023 [main] INFO  c.j.unreal.service.CopyService - ------------
11:54:48.023 [main] INFO  c.j.unreal.service.CopyService -   STARTED
11:54:48.025 [main] INFO  c.j.unreal.service.CopyService - ------------
11:54:48.033 [main] INFO  c.j.unreal.service.CopyService - FORCE DELETE ENABLED - Trying to delete: C:\UE4Projects\PunchKick03Testing
11:54:48.430 [main] INFO  c.j.unreal.service.CopyService - Processing dir: C:\UE4Projects\PunchKick02
11:54:48.596 [main] INFO  c.j.unreal.service.CopyService - Size of dir: 5 GB
11:54:48.596 [main] INFO  c.j.unreal.service.CopyService - Copying contents to dir: C:\UE4Projects\PunchKick03Testing
11:54:48.599 [main] INFO  c.j.unreal.service.CopyService - This can take a bit depending on the size of your project .... DO NOT PANIC ... and if you do just delete the target directory and start again !
File Copy Progress:  100% [===================] 1352/1352 (0:00:01 / 0:00:00)
11:54:49.806 [main] INFO  c.j.unreal.service.CopyService - WHEW ! we made it
11:54:49.807 [main] INFO  c.j.unreal.service.CopyService - New dir location: C:\UE4Projects\PunchKick03Testing
11:54:49.958 [main] INFO  c.j.unreal.service.CopyService - Size of new dir: 5 GB
11:54:49.959 [main] INFO  c.j.unreal.service.CopyService - ------------
11:54:49.960 [main] INFO  c.j.unreal.service.CopyService -   FINISHED
11:54:49.960 [main] INFO  c.j.unreal.service.CopyService - ------------
11:54:49.963 [main] INFO  o.s.c.a.AnnotationConfigApplicationContext - Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@510f3d34: startup date [Wed Nov 28 11:54:47 EST 2018]; root of context hierarchy

How to build

This is a Maven project so you can simply run the following

mvn clean package

Which will produce a ue4-kopiarka.jar artifact in the [project dir]/target directory

The jar file will require application.properties to be in the same directory when running.

Compatibility

This application was tested on the following operating systems:

Windows 7   - JDK 1.8
Windows 10  - JDK 1.8

Should be compatible with macOSX as well as Linux ( may require tweaks to the path validation )

Testing

Currently tests are disabled as they simply trigger the copy function against an example project structure.

If additional functionality is required this section will be expanded.

Built With

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

License

This project is licensed under the Apache 2.0 - see the LICENSE.md file for details

Acknowledgments

Source material

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].