v0.6.0-alpha
Pre-release
Pre-release
jacuzzicoding
released this
16 Dec 07:05
·
22 commits
to main
since this release
The Town and Games Update
Released: December 16, 2024 2:05 AM
Major Features
Town System Implementation
- Added new Town feature allowing players to name their town
- Implemented SwiftData integration for town persistence
- Cross-platform town editing interface for both iOS and macOS
Multi-Game Support Framework
- Implemented ACGame enum system for game version tracking
- Added foundational multi-game support structure
- Prepared database schema for cross-game item tracking
- Updated all item models with game version support
- Reformatted data structures for better maintainability
- Added ACGCN tags to all existing items (fossils, bugs, fish, and art)
Backend Improvements
- New DataManager system for centralized data handling (mostly for the town struct for now)
- Enhanced SwiftData integration with proper error handling
- Improved cross-platform compatibility
- Optimized data fetching and persistence
UI/UX Enhancements
- Platform-specific town editing interfaces
- Custom macOS window sizing and controls
- Improved form handling and data validation
Technical Details
New Components
- Town.swift: Core town data model with SwiftData integration
- DataManager.swift: Centralized data management system
- EditTownView.swift: Cross-platform town editing interface
- Games.swift: Game enumeration and configuration system
Architecture Changes
- Implemented ObservableObject pattern for UI state management
- Added proper main thread handling for UI updates
- Enhanced error handling for database operations
- Improved model container initialization
- Restructured data models to support game versioning
- Enhanced fish collection with game-specific data
- Prepared for expansion from 40 to 80 fish entries
- Added support for multiple Animal Crossing titles:
- Animal Crossing GameCube (ACGCN)
- Wild World (ACWW)
- City Folk (ACCF)
- New Leaf (ACNL)
- New Horizons (ACNH)
Cross-Platform Support
- Platform-specific UI implementations using #if os(macOS)
- Consistent behavior across iOS and macOS
- Optimized layouts for different screen sizes
- Modern navigation APIs for iOS
Known Issues
- Search still limited to current category
- No transition animations for category switches
Future Plans
- Complete New Horizons fish data integration
- Expand fish collection to 80 entries
- Add sea creatures category
- Implement game-specific filtering system
- Consider project rebranding to reflect broader scope
- Expanded town customization options
- Multi-town support preparation
- Enhanced data migration system
- Additional platform-specific optimizations
- Villager management system (up to 15) with birthday tracking
- Calendar system with game-specific holiday tracking
- Special event tracking (fishing tourneys, etc.) based on selected game
- Donation date tracking with visual progress graphs
- Haptic feedback support for iOS
- Potential Python port for expanded desktop user base
Development Notes
- Built with Xcode 15+
- Requires iOS 17.0 or macOS 14.0 and above
- Uses SwiftData for persistence
- Implements SwiftUI for all user interfaces
Installation
- Clone the repository
- Open in Xcode 15 or later
- Build and run on iOS 17.0+ or macOS 14.0+
Feedback and Contributions
- Report issues on GitHub
- Pull requests welcome
Screenshots:
iOS
Released by Brock Jenkinson (@jacuzzicoding)
December 16, 2024
What's Changed
- Feature/multi-game-support by @jacuzzicoding in #25
- merge main by @jacuzzicoding in #26
- Feature/towns by @jacuzzicoding in #27
Full Changelog: v0.5.1-alpha...v0.6.0-alpha