work save (finish battle code framework)